Xcode 8.3.2 转到:
构建设置 > Swift 编译器 - 版本 > 更改 Swift 版本
....可行
以防其他人遇到我刚遇到的问题。
我有一个应用程序已准备好发布到应用商店,但我还在等待时更新到Xcode 9 beta并进行了一些更改。我试图将其上传到应用商店,但它说您不能使用beta版本进行上传,因此我回到了Xcode 8,但它开始给出“Swift Language Version”(SWIFT_VERSION)错误。
我的解决方法
在项目构建设置下 > Swift编译器版本 > 我不得不将其从Swift 4(目前不支持)
更改为Swift 3
。
问题解决:)
幽灵无法回答。苹果XCode破损的真正原因是因为苹果的XCode“使用旧设置”实际上是一个Swift版本号。在XCode 8.1中,“No”被翻译为3.0.1,在XCode 8.2中,“No”被翻译为3.0。因此,您需要将版本切换到Swift 3.0。这很有道理。我想这是XCode 8.1中的一个错误。
我的git diff:
--- a/ios/myapp.xcodeproj/project.pbxproj
+++ b/ios/myapp.xcodeproj/project.pbxproj
@@ -1757,7 +1757,7 @@
SDKROOT = iphoneos;
SKIP_INSTALL = YES;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
- SWIFT_VERSION = 3.0.1;
+ SWIFT_VERSION = 3.0;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
我看到上面有一个评论给出了相同的答案,只是觉得需要更加突出。
我曾经遇到过“使用旧版Swift语言版本”的问题,但是我通过设置版本解决了它。以下是解决问题的提示:
如果您的目标已经添加了CocoaPods,请在podFile的末尾添加以下代码:
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
添加完代码后,请更新cocoaPods。
-----如果您未添加cocoaPods,您可以将目标版本设置为YES(TARGETS->构建设置->使用传统的Swift语言版本-> YES)希望能对您有所帮助。
我昨天也遇到了同样的问题。以下是修复步骤:
构建设置 -> 搜索 Swift,选择使用旧版 Swift 语言版本
切换“否”为“是” -> 构建。你会得到更多错误提示。
再次将切换开关从“是”改为“否”,构建 -> 成功!
有时候苹果让我们变得如此疯狂 :)
所有步骤完成。
buildSettings
中的SWIFT_VERSION
键。在XCode 8.1中,将选项设置为“否”意味着SWIFT_VERSION = 3.0.1
,而在XCode 8.2中,它只是SWIFT_VERSION = 3.0
。因此会产生“有趣”的副作用。 - 0x416e746f6e