使用Xcode 8 Beta从命令行运行Swift 3

5
在安装Xcode 8 beta之后,我能否从命令行运行Swift 3?我发现/usr/bin/swift仍然是5月5日的Swift 2.2版本。我希望能看到像/usr/bin/swift3这样的东西,但没有这样的运气。 swift.org downloads表示,“Swift 3.0 Preview 1可作为Xcode 8.0 beta的一部分使用。”但我没有找到使用Xcode 8 beta运行命令行Swift 3的说明。
理想情况下,我想使用交互式REPL……以及对Swift Package Manager代码进行命令行编译。

SPM尚未集成到Xcode 8中。 - Eric Aya
Xcode确实需要适当的SPM集成。然而,使用Arsen在更改“命令行工具”的提示后,我可以使用命令行中的“swift build”编译使用SPM的代码。并且我确实使用了Swift 3代码,如:chars.index(chars.startIndex, offsetBy: 3) - Rick Majpruz
是的,我也在使用Swift 3来开发CLI应用程序,它运行良好。 :) 我只是在评论你问题中最后一句话的最后一部分,这似乎也与Xcode 8有关。 - Eric Aya
我刚刚注意到我的问题与Where are the swift/swiftc binaries for v3?相同。正如MaciekArsen在他们的答案中所暗示的那样,Swift二进制文件对于Swift 2.2和Swift 3是相同的,即/usr/bin/swift。但是,xcode select -s ...会切换使用的底层Xcode安装程序。 - Rick Majpruz
我刚才将Maciek的答案标记为正确。但是Arsen的答案也是正确的,并且作为一个简单的图形用户界面交互非常有用。总体来说,xcode-select允许脚本化,这对于在Swift 2.2和Swift 3代码之间交替的代码库进行自动化测试是必不可少的。这两个答案都应该被标记为有用,但是我的声望还不够高。 - Rick Majpruz
2个回答

10
sudo xcode-select -s /Applications/Xcode-beta.app 
swift

适用于脚本编写。但是我必须使用 sudo xcode-select -s ~/Applications/Xcode-beta.app,因为我将我的测试版放在了 ~/Applications 中。 - Rick Majpruz
很高兴我能帮到您@RickMajpruz,随时欢迎给我的回答点赞。谢谢! - Maciek Czarnik
现在我不再需要查找这个答案了:alias sw3="sudo xcode-select -s ~/Applications/Xcode-beta.app ; swift"然后可以通过以下方式切换回去:alias sw2="sudo xcode-select -s /Applications/Xcode.app ; swift" - Rick Majpruz

6
运行 Xcode-Beta 并更改 Command line tools
效果如下:
图片1:enter image description here 图片2:enter image description here

我发现18K /usr/bin/swift上的时间戳仍停留在5月5日。因此,/usr/bin/swift二进制文件必须检查Xcode应用程序(包括Mac Store安装和此beta版本),以选择适当的REPL和编译器。 - Rick Majpruz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接