我刚刚在Xcode中创建了一个新的Swift项目。我想知道它使用的是哪个版本的Swift。
我如何在Xcode或终端中看到我在项目中使用的Swift版本?
我刚刚在Xcode中创建了一个新的Swift项目。我想知道它使用的是哪个版本的Swift。
我如何在Xcode或终端中看到我在项目中使用的Swift版本?
当前回答
额外的贡献: 我正在使用一个自定义node.js脚本来提取一个干净的字符串用于Jazzy文档。如果你能找到一个地方将其运用到你的开发过程中,你可能会用到它:
从Bash脚本调用:
#!/bin/bash
swiftversion=$(node SwiftVerSlicer.js "${xcrun swift -version}");
echo $swiftversion
SwiftVerSlicer.js:
// begin script
const inputString = `${process.argv[2]}`
let searchTerm = (inputString.indexOf('(') - 1)//-1 cause whitespace
let version = inputString.slice(0,searchTerm)
console.log(version)
// end script
当然,你也可以使用regex,但你可以随心所欲:]
其他回答
从Xcode 8.3开始,构建设置有关键的Swift语言版本,其值为目标使用的Swift版本。
对于旧的xcode使用这个解决方案, 打开终端并输入以下命令
案例1:你只安装了一个Xcode App
swift -version
案例2:你已经安装了多个Xcode应用
切换活动开发人员目录(替换Xcode_7.3.;应用程序从 下面的命令与你的Xcode应用程序文件名从应用程序目录,你想要的 查看swift版本) sudo xcode-select——switch /Applications/Xcode_7.3.app/Contents/Developer . exe 然后 斯威夫特- version
注意:从Xcode 8到Xcode 8.2。你可以使用swift 2.3,即使Xcode 8使用swift 3。默认swift版本为X。要使用swift 2.3,只需在构建设置中将“使用传统swift语言版本”的标志打开为YES, XCode将对该项目目标使用swift 2.3。
额外的贡献: 我正在使用一个自定义node.js脚本来提取一个干净的字符串用于Jazzy文档。如果你能找到一个地方将其运用到你的开发过程中,你可能会用到它:
从Bash脚本调用:
#!/bin/bash
swiftversion=$(node SwiftVerSlicer.js "${xcrun swift -version}");
echo $swiftversion
SwiftVerSlicer.js:
// begin script
const inputString = `${process.argv[2]}`
let searchTerm = (inputString.indexOf('(') - 1)//-1 cause whitespace
let version = inputString.slice(0,searchTerm)
console.log(version)
// end script
当然,你也可以使用regex,但你可以随心所欲:]
您可以在终端上执行命令
xcrun swift -version
or
你可以参考下表查看哪个Xcode使用了哪个版本的swift语言。
Xcode 13.4.1 : Swift version 5.6.1
Xcode 13.3 : Swift version 5.6
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版本的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