我正在尝试从应用程序下载文件,尝试在Xcode中打开并出现错误:
” 显示最近的消息
:-1:不支持SWIFT_VERSION'3.0',支持的版本为:4.0、4.2、5.0。 (在目标“ SimpleWeather”中)”
答案 0 :(得分:29)
在项目中选择目标'SimpleWeather'并更改语言版本Target-> build settings-> Swift编译器语言->选择5,4.2等
答案 1 :(得分:18)
答案 2 :(得分:11)
答案 3 :(得分:6)
答案 4 :(得分:5)
在您的情况下,该应用似乎可能具有旧的Swift版本代码,例如Swift 3.0。在Xcode版本10.2中已经启动了Swift 5.0版本。 Xcode 10.2不支持Swift 3.0版本的编译器。您可以从Build Settings -> Swift Compiler - Language -> Swift Language Version -> Change it to Swift 5
更改编译器。如果您的代码与该语言版本兼容,则它将正确运行代码。
但是,Swift 3兼容模式将不受支持。 Swift 5编译器。 Swift 4.2是Swift支持的最新版本 Swift 3模式。两者的表面都有重要变化 语言及其版本内部的实现 继Swift 3之后,它将成为未来(持久)的基础 源和二进制稳定性。
有关更多详细信息,请参见下面的链接。 https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_release_notes/swift_5_release_notes_for_xcode_10_2
如果您真的希望运行包含旧版Swift代码的应用程序,则必须使用旧版Xcode。您可以使用Xcode版本10.1,它是支持Swift 3.0版本的编译器。
另一种替代方法是将旧的Swift代码迁移到Swift版本的新版本。您可以在Xcode 10.1版本中将Swift 3.0迁移到Swift 4.0。
有关迁移指南,请参阅此 https://swift.org/migration-guide-swift4/
答案 5 :(得分:5)
答案 6 :(得分:5)
我打开了文件MyProject.xcodeproj
(使用VSCode编辑器)
我发现其中的几行
SWIFT_VERSION = 3.0;
(大约在第400行显示/* Begin XCBuildConfiguration section */
)
修改为SWIFT_VERSION = 5.0或其他。 之后,我可以构建并运行该项目。
答案 7 :(得分:2)
我在开发Cocoapod时遇到了这个问题。我的存储库中有一个旧的.swift-version
文件,指定了Swift 3.0。
跑步pod lib lint --verbose
使我做出了有益的回应:
请删除现已弃用的
.swift-version
文件,仅在您的podspec中使用swift_version
属性。
我删除了文件,并将spec.swift_version = '5.0'
添加到我的podspec文件中以解决此问题。
答案 8 :(得分:2)
我已按照此页面上的说明进行操作,但该错误未能解决。最后,进入
$ vim MyProject.xcodeproj/project.pbxproj
找到两个实例
SWIFT_VERSION = 3.0;
仍然被引用。我将其更改为5.0,错误消失了。不知道为什么那两个还在那里。
答案 9 :(得分:1)
答案 10 :(得分:1)
如果您像我一样处理多个Pod文件,而使用SWIFT_Version = 3.0找不到Pod,请尝试搜索栏
答案 11 :(得分:1)
答案 12 :(得分:0)
我是iOS开发的新手。在遵循以上所有答案之后,我仍然遇到相同的错误。我使用的是Xcode 11,我从FoodTracker网站下载了“ Apple Developer”示例,在尝试构建它时遇到了同样的错误。我发现在VIM项目文件内容之后,该项目具有一些引用Swift语言版本的设置。因此,我通过首先将Swift语言版本的“项目> FoodTracker”和 还有“目标> FoodTracker”和“目标> FoodTrackerTests” 设置为解决此问题的方法。希望对您有所帮助。
答案 13 :(得分:0)
1)更改podfile上的pod版本(因为库写了旧的swift版本)
2)在终端上“ pod安装”
答案 14 :(得分:0)
答案 15 :(得分:0)
请确保您的 pod 版本与您的 swift 版本兼容。当我安装了错误版本的 pod(swift 2.3)时,我遇到了这个问题,但我使用的是 swift 4
答案 16 :(得分:0)