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

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


当前回答

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

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

其他回答

我所做的就是在终点站说

$ xcrun swift -version

Xcode 6.3.2的输出是:

Apple Swift version 1.2 (swiftlang-602.0.53.1 clang-602.0.53)

当然,前提是你的xrun正确指向你的Xcode副本。如果你像我一样,同时使用多个版本的Xcode,那就太麻烦了!确保它是,比如说

$ xcrun --find swift

看看它显示的Xcode路径。例如:

/Applications/Xcode.app/...

如果这是你的Xcode,那么-version的输出是准确的。如果你需要重新指向xcrun,使用Xcode的位置首选项窗格中的命令行工具弹出菜单。

这篇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:)

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

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

只要在终端中输入swift命令,它就会显示版本,同时登录到swift控制台。(如下所示)

System-IOSs-MacBook-Air swift
Welcome to Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7).
Type :help for assistance.

你可以看到并选择Xcode使用的Swift版本:

目标->构建设置-> Swift语言版本:

这在Xcode 8.3和Xcode 9中可用(还没有检查旧版本)