Wie behebt man den Fehler "SWIFT_VERSION '3.0' wird nicht unterstützt, unterstützte Versionen sind: 4.0, 4.2, 5.0" Fehler in Xcode 10.2?

118

Ich versuche, von der App heruntergeladen auszuführen, versuche, in Xcode zu öffnen und habe einen Fehler:

"Anzeigen der letzten Nachrichten
: -1: SWIFT_VERSION '3.0' wird nicht unterstützt, unterstützte Versionen sind: 4.0, 4.2, 5.0. (Im Ziel 'SimpleWeather')"

Screenshot hinzugefügt

vlad uvarov
quelle
Aktualisiere das Zeug. 3.0 ist ziemlich alt in Bezug auf Swift Evolution Speed
Vadian
2
Ich verwende Xcode 10.2 und versuche, das alte 3.0 zu öffnen, kann aber das Programm nicht ausführen, da ich Fehler habe.
Vlad Uvarov
Öffnen und aktualisieren Sie das Projekt in Xcode 10.1. Es ist möglich, mehrere verschiedene Versionen von Xcode auf der Festplatte zu haben.
Vadian
1
aktualisierte Version von Xcode; (
vlad uvarov
7
OH MEIN GOTT!!! Ich habe drei Stunden meiner Zeit gebraucht, um XCode 10.2 herunterzuladen, nur um herauszufinden, dass ich meine Apps nicht mehr erstellen kann. Ich habe kein Backup von XCode 10.1! Das ist nur Wahnsinn, für den Apple mich bezahlen sollte.
Vojta

Antworten:

98

Wählen Sie das Ziel 'SimpleWeather' im Projekt aus und ändern Sie die Sprachversion. Ziel-> Build-Einstellung -> Schnelle Compilersprache -> Wählen Sie 5, 4.2 usw.

Bild der Build-Einstellung zum Ändern der Compilersprache

Xeneka
quelle
76

******** Einfachster Weg: **********

1.Klicken Sie in der linken Spalte auf PODs.

2. Wählen Sie in der mittleren Spalte den gewünschten Pod aus und navigieren Sie oben rechts zu "Build Settings".

3. Suchen Sie dann nach "Swift Language Version" und wechseln Sie zu einer bekannten Version.

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Kingsley Mitchell
quelle
1
Danke. Dies ist die Antwort, nach der ich suche.
Vinu Jacob
Screenshot hilft bei der Suche.
Namo
53

Wählen Sie für Xcode 10.1 Ihre Pods-Datei aus

Geben Sie hier die Bildbeschreibung ein

-> Gehen Sie zu Build Settings -> Wählen Sie Ihren Pod -> Suchen Sie nach "Swift" -> Navigieren Sie zu "Swift Language version" -> Stellen Sie die gewünschte Sprachversion ein.

Geben Sie hier die Bildbeschreibung ein

Deepak Chaudhary
quelle
9
Diese Lösung funktioniert nicht, wenn die Swift-Version ist 3.xund Sie eine größere Xcode-Version haben als10.2
Juan P. Ortiz
12

Ich habe die Anweisungen auf dieser Seite befolgt und der Fehler wurde nicht behoben. Schließlich ging in

$ vim MyProject.xcodeproj/project.pbxproj

und fand zwei Fälle, in denen

SWIFT_VERSION = 3.0;

wurde immer noch referenziert. Ich habe diese auf 5.0 geändert und der Fehler war verschwunden. Ich bin mir nicht sicher, warum diese beiden noch da waren.

Wald
quelle
1
Ich habe Apples Handbuch für die Migration von Swift 3.0 auf 5.0 verwendet, aber der Assistent zeigte keine Vorschläge an. Sobald ich diese beiden Zeilen in der obigen Antwort geändert habe, wurde ich aufgefordert, sofort zu migrieren. Vielen Dank für das Teilen dieser Lösung @Forrest !
Kareem Jeiroudi
Genial! Ich bin froh, dass es dir geholfen hat @KareemJeiroudi
Forrest
2
Danke, es hat mir sehr geholfen. Ich habe eine halbe Stunde
gegoogelt
2
Das hat auch bei mir funktioniert. Eine Klasse darauf und das Beispielprojekt zu machen war in der falschen Version.
Sixstring
11
  1. Projekt auswählen
  2. Wählen Sie Build SettingTab
  3. Wählen Sie die Swift Compiler-Sprachoption

Geben Sie hier die Bildbeschreibung ein

Manoj Rawat
quelle
10

Geben Sie hier die Bildbeschreibung einWählen Sie einen Pod wie im Bild aus und ändern Sie die schnelle Sprachversion. Dadurch können Sie eines Tages sparen

Geben Sie hier die Bildbeschreibung ein

Govind Wadhwa
quelle
7

Es scheint, dass die App in Ihrem Fall einen alten Swift-Versionscode wie Swift 3.0 hat. In der Version von Xcode hat Version 10.2 die Swift 5.0-Version gestartet. Xcode 10.2 unterstützt keinen Compiler für die Swift 3.0-Version. Sie können den Compiler von ändern Build Settings -> Swift Compiler - Language -> Swift Language Version -> Change it to Swift 5. Wenn Ihr Code mit dieser Sprachversion kompatibel ist, wird der Code fehlerfrei ausgeführt.

Der Swift 3-Kompatibilitätsmodus wird im Swift 5-Compiler jedoch nicht unterstützt. Swift 4.2 ist die letzte Version von Swift, die den Swift 3-Modus unterstützt. In den Releases nach Swift 3 gibt es wichtige Änderungen sowohl an der Oberfläche der Sprache als auch am Inneren ihrer Implementierung, die die Grundlage für zukünftige (und dauerhafte) Quellen- und Binärstabilität bilden werden.

Weitere Informationen finden Sie unter dem folgenden Link. https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_release_notes/swift_5_release_notes_for_xcode_10_2

Wenn Sie die App mit älterem Swift-Versionscode wirklich ausführen möchten, müssen Sie eine ältere Version von Xcode verwenden. Sie können Xcode Version 10.1 verwenden, dessen Compiler die Swift 3.0-Version unterstützt.

Eine andere Alternative besteht darin, Ihren alten Swift-Code auf die neue Version der Swift-Version zu migrieren. Sie können Swift 3.0 auf Swift 4.0 in der Xcode 10.1-Version migrieren.

Informationen zur Migration finden Sie unter https://swift.org/migration-guide-swift4/.

Bhavin_m
quelle
5

Ich bin bei der Entwicklung eines Cocoapod auf dieses Problem gestoßen. Ich hatte eine alte .swift-versionDatei in meinem Repo, die Swift 3.0 spezifizierte.

Das Laufen pod lib lint --verboseführte mich zu dieser hilfreichen Antwort:

Bitte entfernen Sie die .swift-versionjetzt veraltete Datei und verwenden Sie nur das swift_versionAttribut in Ihrer Podspec.

Ich habe die Datei gelöscht und spec.swift_version = '5.0'zu meiner Podspec-Datei hinzugefügt , um das Problem zu beheben.

Justin Vallely
quelle
4
  1. Überprüfen Sie dies heraus:
    1. Klicken Sie auf Projektname
    2. Klicken Sie auf Ziel
    3. Klicken Sie auf Build-Einstellung
    4. In der Swift-Sprachversion: Wählen Sie Swift 4

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Codierer
quelle
4

Ich habe die Datei geöffnet MyProject.xcodeproj (mit dem VSCode-Editor)

und ich fand einige Zeilen wo

SWIFT_VERSION = 3.0;

(ungefähr in Zeile 400, wo es heißt /* Begin XCBuildConfiguration section */)

Ändern Sie in SWIFT_VERSION = 5.0 oder andere. Danach konnte ich das Projekt erstellen und ausführen.

Dan Alboteanu
quelle
3

Suchen Sie nach Swift und doppelklicken Sie, und ändern Sie dann jede fehlerhafte Version.

Geben Sie hier die Bildbeschreibung ein

ScottyBlades
quelle
1

Wenn Sie mehrere Pod-Dateien wie ich haben und Probleme haben, den Pod mit SWIFT_Version = 3.0 zu finden, versuchen Sie es in der Suchleiste

Wilhelm
quelle
0

1) Ändern Sie die Pod-Version in der Pod-Datei (weil die Bibliothek die alte schnelle Version geschrieben hat).

2) "Pod installieren" am Terminal

Erhan Demirci
quelle
0

Ich bin neu in der iOS-Entwicklung. Nachdem ich alle oben genannten Antworten befolgt hatte, wurde immer noch der gleiche Fehler angezeigt. Ich habe Xcode 11 verwendet und das Beispiel " FoodTracker " von der Apple Developer -Website heruntergeladen. Nach dem Versuch, es zu erstellen, wurde der gleiche Fehler angezeigt . Ich fand heraus, dass das Projekt mehrere Einstellungen hat, die sich auf die Swift-Sprachversion nach VIM des Projektdateiinhalts beziehen. Also habe ich dieses Problem behoben, indem ich zuerst "Project> FoodTracker" sowie "TARGETS> FoodTracker" und "TARGETS> FoodTrackerTests" in der Swift Language Version auf 5.0 gesetzt habe. Ich hoffe es hilft.

Festlegen der Swift-Sprachversion für das Projekt und ALLE Ziele

Jo Poon
quelle
-1
  1. Öffnen Sie MyProject.xcodeproj / project.pbxproj im Editor (eq Sublime).

Beispiel Calculator.xcodeproj

  1. Benennen Sie alle SWIFT_VERSION = 3.0 um; Benennen Sie alle SWIFT_VERSION = 5.0 um;

Geben Sie hier die Bildbeschreibung ein

Lamhot
quelle