2016-10-28 1 views
-4

kompilieren Ich habe viele Probleme mit meinem Projekt Swift 2.2 in Xcode8, die Pod-Bibliothek generiert viele Fehler, ich habe ein Update von Cocoapods und Bibliothek, aber ich habe immer noch diese Fehler, die ich habe konvertieren Syntax zu Swift 2.3, aber die Fehler sind immer noch da. Ich möchte vorerst keine Swift 3 konvertieren. HierWie kann ich Swift 2.3 Code in Xcode 8

ist ein Bild von Fehlern:

Socket Io Client Swift errors

Vielen Dank im Voraus und sorry für Englisch Fehler.

Antwort

2

Okay, so ist das Problem, dass the library you are usingist Swift 3. So gibt es keinen Grund zu sagen, "Ich möchte nicht zu Swift 3 konvertieren". Sie haben konvertiert zu Swift 3, ob Sie es mögen oder nicht. Sie müssen diesen Code nicht als Swift 2.3 kompilieren. Sie müssen es als Swift 3 kompilieren.

+0

Ja, ich denke das ist das Problem, wenn ich diesen Befehl ausführen: xcrun swift -version => Apple Swift Version 3.0 (swiftlang-800.0.46.2 clang-800.0.38) Ziel: x86_64-apple-macosx10.9, I weiß nicht, was zu tun ist, habe ich viele Lösungen versucht, aber ich habe immer Fehler lib – Faouzi

+0

Sie zeigten einen Screenshot einiger Build-Fehler mit Socket-IO-Client-Swift. Sie haben gefragt, warum Sie diese Buildfehler erhalten. Ich sage dir warum. Dieser Code ist _in Swift 3_ geschrieben. Sie müssen _as Swift 3_ kompilieren. Ihre Fehler sind, weil Sie versuchen, als Swift 2.2 oder Swift 2.3 zu kompilieren. Hör auf damit zu versuchen. Es ist _Swift 3_ Code. – matt

+0

Alternativ können Sie versuchen, in Ihrer Poddatei eine ältere Version Ihrer Pod-Abhängigkeit anzugeben. Überprüfen Sie ihre Versionshinweise/Dokumente, um zu sehen, ob es eine Version für Swift 2.x gibt. –

1

Um Swift 2.3 in Xcode8 auszuführen, setzen Sie Use Legacy Swift Language Version auf YES innerhalb Ihrer Projekte, Ihrer Ziele und Ihrer Pod-Framework-Ziele Build Settings.

+0

Vielen Dank für Ihre Antwort, habe ich aber immer Fehler – Faouzi

+0

Beitrag einen Fehler. Ich nehme an, dass Sie ursprünglich zu Swift3 konvertiert sind und Sie Ihre Probleme beheben müssen. Oder: gehe zurück zu Swift 2.3 Version und benutze die erwähnte Build-Einstellung – shallowThought

+0

Mein Projekt ist in Swift2.3 konvertiert, denn wenn ich in Swift2.3 konvertiere, habe ich eine Warnung: Target wurde bereits in Swift2.3 Syntax konvertiert. Und die Einstellungen Verwende Swift Language Version ist ein Ja – Faouzi