2016-09-22 52 views
3

我正在開發一個具有20多個框架依賴項的應用程序,但並非所有應用程序都在3.0以上。所以我想繼續使用Swift 2.3。但是,在將我的Xcode更新到8.0後,我無法再構建我的應用程序。它失敗,出現以下錯誤:我如何繼續使用Swift 2.3而不是3.0,Xcode已更新並且無法再構建

「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. 

我不想將整個項目轉換爲3.0。

所以我的問題是如何保持Xcode 8.0更新後的一切?

+0

我已經回答了一個類似的問題給你已經:http://stackoverflow.com/questions/39485577/alamofire-not-be-code-signed-because-its-settings-dont-specify-a-development/39485655 #39485655你應該可以使用它來調整你的框架 – tech4242

+0

看到這個http://stackoverflow.com/questions/38446097/xcode-8-beta-3-use-legacy-swift-issue –

回答

4

如果你想使用Swift 2.3你應該去Build Settings -> Use Legacy Swift Language Version -> YES這將幫助你實現它。在構建應用程序之後,將會有小的語法問題。固定(不用這麼辛苦)後,它會像往常一樣

+0

有很多問題現在有了圖書館,其中一些很小,但我不知道如何解決其中的一些問題。有沒有更好的辦法 ? –

+0

如果你正在使用源代碼控制,請回滾到你沒有更新庫的提交,如果你已經更新了當前的庫,其中一些被修改爲符合swift 3.0語法,所以在這種情況下,你在構建之後, 2.3的建立你應該這樣做:轉換爲最新的swift語法 - 後,不要更新庫。 – C0mrade

+0

但是如果我確實轉換了,它將會是3.0,我不想要那個,不是嗎? –

0

您可能需要閱讀這篇文章:https://swift.org/migration-guide/或者更具體地說部分使用迦太基/的CocoaPods項目

我想你可以選擇將項目的源代碼包含在你的Xcode工作區的方法中。這基本上意味着您將所有代碼保留在Swift 2.3中,並將所有或一些外部框架的快照製作爲非Swift 3.0準備好的Pods。

相關問題