我刚刚在Xcode中创建了一个新的Swift项目。我想知道它使用的是哪个版本的Swift。

我如何在Xcode或终端中看到我在项目中使用的Swift版本?


当前回答

打开终端并写入:

swift -version

其他回答

这篇reddit帖子帮助了我: https://www.reddit.com/r/swift/comments/4o8atc/xcode_8_which_swift/d4anpet

Xcode 8默认使用Swift 3.0。但你可以打开Swift 2.3。转到项目的构建设置,并将“使用传统Swift语言版本”设置为YES。

好老reddit:)

如果有人正在寻找基于Xcode版本的Swift版本的快速一对一映射:

Xcode 13.4.1 :      Swift version 5.6.1

Xcode 13.2   :      Swift version 5.5.2

Xcode 12.5   :      Swift version 5.4.2

Xcode 12.3   :      Swift version 5.3.2

Xcode 12.2   :      Swift version 5.3.1

Xcode 11.6   :      Swift version 5.2.4

Xcode 11.5   :      Swift version 5.2.4

Xcode 11.4   :      Swift version 5.2

Xcode 11.3   :      Swift version 5.1.3

Xcode 11.2.1 :      Swift version 5.1.2

Xcode 11.1   :      Swift version 5.1

在不同的Xcode版本中运行以下命令获得:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift --version

如果你想检查swift的特定版本的运行代码,你可以使用

#if compiler(>=5.1) //4.2, 3.0, 2.0 replace whatever swft version you wants to check
#endif

关于如何在Xcode 12中点击几下就能找到你的项目使用的Swift版本的更新答案,以帮助像我这样的新手。

点击你的项目(左边面板的顶级蓝色图标) 点击构建设置(项目>头中的第5项) 向下滚动到Swift编译器-语言,并查看下拉菜单。

要查看在您的机器上安装的swift默认版本,然后从命令行输入以下命令:

swift --version

Apple Swift版本4.1.2 (clang- 902.0.54) 目标:x86_64-apple-darwin17.6.0

这很可能是你已经安装的Xcode应用商店版本中包含的版本(除非你已经更改了它)。

如果你想确定一个特定版本的Xcode(比如测试版)使用的Swift的实际版本,那么从命令行调用Xcode包中的Swift二进制文件,并将参数——version传递给它

/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift --version

Apple Swift 4.2版本(swiflang -1000.0.16.7 clang-1000.10.25.3) 目标:x86_64-apple-darwin17.6.0