it-swarm.com.de

xcode 8 Swift-Update mit Fehler "Use Legacy Swift Language Version"

Als ich mein Projekt in Xcode 8 öffnete, erhielt ich die folgende Fehlermeldung

Use Legacy Swift Language Version” (Swift_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly

bezieht sich auf ein ähnliches post in StackOverflow, verwenden Sie die ältere Swift-Sprachversion YES/NO. Aber es funktioniert für mich nicht entweder mit JA oder ohne Wert?

Bitte helfen.

Ich habe die Option Legacy Swift-Sprachversion verwenden für die Optionen YES/NO aktiviert. Bitte überprüfen Sie den beigefügten Screenshot Use Legacy Swift Language Version-YES

Use Legacy Swift Language Version-NO

19
rakex

Fügen Sie dies Ihrer Pod-Datei hinzu:

# Uncomment this line to define a global platform for your project
platform :ios, '9.0'
# Uncomment this line if you're using Swift
use_frameworks!

target 'yourappname' do

pod 'yourpodlists'

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

Führen Sie pod-install erneut aus. Reinigen Sie Ihr Projekt mit cdm + alt + shift + k. Wieder mit cmd + shift + k reinigen. Starten Sie Xcode neu. Bauen. Jetzt sollte es klappen.

Wenn Sie keine cocoapods verwenden, sollten Sie dieses Problem beheben können, indem Sie das Compiler-Version-Attribut Use Legacy Swift Language Version von unspecified auf Yes oder No setzen.

Einstellungen des Projekts oder der Bibliothek erstellen ->

 enter image description here

16
David Seek

 enter image description here Ich benutze Xcode 8.3.3 Nachdem ich zu viel gesurft und herumgearbeitet habe, habe ich diese Lösung gefunden, und das hat für mich funktioniert.

Here are the steps.
1=> select your target from Xcode
2=> go to build setting
3=> search for "Swift Language Version"
4=> change it to Swift 3. (or accordingly.)
2
Aklesh Rathaur

versuchen Sie, den Swift-Code in Swift3 oder Swift 2.3 zu konvertieren. Bearbeiten -> Konvertieren -> In den aktuellen Swift-> Wählen Sie Swift 3 oder Swift 2.3. Das wird funktionieren.

2
Savitha

Wenn Sie keine Pods verwenden, fügen Sie dies einfach Ihrer Info.plist hinzu - ich bin auf 2.3  enter image description here

da die Option nicht in den Build-Einstellungen aufgeführt war.

0
slashlos

Als Hinweis auf this , Folgendes habe ich (für Xcode 8) geschlossen:

  1. Wenn Ihr Code in der Swift-Version = 2.3 ist, müssen Sie in der Build-Einstellung nur die Option Legacy Swift-Sprachversion auf YES setzen, und Sie können loslegen.
  2. Wenn Ihr Code in der Swift-Version <2.3 ist, gilt Folgendes: 

    i) Konvertieren Sie Ihren Code in Swift 2.3 und setzen Sie "Use Legacy Swift Language Version = YES". 

    ODER

    ii) konvertiere deinen Code in die neueste Swift-Version (möglicherweise 3.0) und set 'Use Legacy Swift Language Version = NO' 

In meinem Fall habe ich eine externe Bibliothek verwendet, die in Swift 2.2 Fehler in Xcode 8.0 verursacht hat. Daher ersetze ich dieselbe Bibliothek durch die Swift-Version 2.3 und verwende die obige Lösung 2.i). Jetzt ist alles gut.

Hoffe, das hilft jemandem, der die Lösung für dieses Problem sucht.

0
iAkki