wake-up-neo.com

CocoaPods und Swift 3.0

Ich möchte einfach Swift 3.0 in einem meiner Projekte ausprobieren. Xcode öffnet das Migrationsfenster, um mein Projekt für die Verwendung von Swift 3.0 zu aktualisieren.

Das Problem ist, ich möchte nur mein Projekt aktualisieren und das Pods-Projekt unberührt lassen, da alle Änderungen verworfen werden, wenn ich pod install erneut ausführen.

Hat schon jemand eine Lösung dafür?

Was Sie fragen, ist nicht möglich. Xcode baut sowohl Ihre Cocoapods-Abhängigkeiten als auch Ihr Projekt auf. Sie können Swift 2.x- und Swift 3-Code nicht in demselben Projekt mischen oder Cocoapods mit Swift 3 verwenden, die in Swift 2.x geschrieben sind.

28
JAL

Verwenden Sie einfach die folgenden Befehle am Ende Ihrer Pod-Datei, und Ihre Pod-Datei wird so eingerichtet, dass die Frameworks den Swift 3-Compiler oder den älteren Compiler automatisch übernehmen, sodass Sie Swift 2.1 nicht in Swift 3 und solche Fehler verwenden können.

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['Swift_VERSION'] = '3.0'
    end
  end
end

Sehen Sie sich dazu das folgende Beispiel meiner Pod-Datei an. Stellen Sie nur sicher, dass die End-Anweisung nicht vor dem Block steht, den ich oben geschrieben habe.

platform :ios, '8.0'
use_frameworks!

target 'Project 1'

pod 'FacebookCore'
pod 'FacebookLogin'
pod 'FacebookShare'

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['Swift_VERSION'] = '3.0'
    end
  end
end
4
Asfand Shabbir

Dies könnte hilfreich sein Anleitung zur schnellen Migration

Direkt von Swift.org

Verwenden von Carthage/CocoaPods-Projekten

Wenn Sie binäre Swift-Module aus anderen Projekten verwenden, die nicht zusammen mit Ihrem Projekt in Ihrem Xcode-Arbeitsbereich erstellt wurden, können Sie eine der folgenden Migrationsstrategien auswählen:

  1. Fügen Sie den Quellcode des Projekts in Ihren Xcode-Arbeitsbereich ein. Mit Erstellen und migrieren Sie das Open-Source-Projekt Zusammen mit Ihrem eigenen Projekt.
  2. Verwenden Sie Xcode 7.3 [.1], um die erforderlichen Änderungen vorzunehmen und zu bestätigen, dass Das Projekt alles korrekt erstellt und verknüpft.
  3. Fügen Sie die anderen Xcode-Projektdateien in Ihren Arbeitsbereich ein, und richten Sie ein Setup-Schema ein, um die Ziele festzulegen, von denen Ihr Projekt abhängt. Entfernen Sie entweder die search-Pfade oder bereinigen Sie den Build-Ordner, sodass Sie sich sicher sind, dass __. Sie nur die Swift-Module verwenden, die in Ihrem Xcode -Workspace erstellt werden.

Warten Sie, bis das Upstream-Open-Source-Projekt auf Swift 2.3 oder Swift 3 aktualisiert wird

Sie können diesen Workflow zum Migrieren Ihres Projekts verfolgen:

  1. Behalten Sie Ihr Projekt mit Xcode 7.3 bei
  2. Rufen Sie den Migrationsassistenten auf, und wenden Sie die Quelländerungen an, die Nur für Ihr eigenes Projekt vorgeschlagen werden (für Swift 2.3 oder Swift 3).
  3. Bevor Sie mit dem Erstellen beginnen, ändern Sie die Carthage/CocoaPods-Abhängigkeitsdatei Und geben Sie das spezifische Tag/den Zweig des Projekts an, das Zu Swift 2.3 oder Swift 3 migriert ist. Aktualisieren Sie Ihre Abhängigkeiten, und versuchen Sie, Ihr Projekt mit den aktualisierten Abhängigkeiten und den Quelländerungen, die Sie vom Migrator erhalten haben, zu erstellen.
4
harsh_v

alle xcode in Gebrauch neuesten Cocoapods und entfernen Sie Cocoapods und installieren Sie die neueste Version mit diesem Schritt müde Arbeit in Swift 3.0 ich in Swift 3.0 verwendet 

0.Sudo-Edelstein installieren Kokosapoden

1.cd (Drag & Drop Ihres Projektordners)

2.Sudo Edelstein installieren Kokosapoden

3.touch podfile // Erzeuge podfile

4.open -e podfile

5.platform: ios, '10 .0 ' Use_frameworks!

ziel '' tun pod 'Alamofire', '~> 4.4' ende

6.ctrl + s

7.ctrl + q

8. pod installieren

0
ronak patel