我读了What's new in Xcode 6。本文介绍了一些关于Xcode 6的新功能,它说:
命令行
Xcode的调试器包含Swift语言的交互式版本,称为REPL(Read-Eval-Print-Loop)。使用Swift语法评估正在运行的应用程序并与之交互,或者在类似脚本的环境中编写新代码。 REPL可以从LLDB内部的Xcode控制台或终端获得。
我想知道如何获取REPL?
答案 0 :(得分:135)
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
然后你可以做其中一个:
xcrun swift
lldb --repl
从Xcode 6.1开始 - 在终端中输入swift
也会启动REPL。
答案 1 :(得分:58)
或者,如果您不想搞乱当前的开发环境,可以运行:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift
答案 2 :(得分:40)
步骤1:打开终端
第2步:键入" swift"
第3步:没有第3步
示例:
GoldCoast:~ macmark$ swift
Welcome to Swift! Type :help for assistance.
1> println("Hello, world")
Hello, world
2> var myVariable = 42
myVariable: Int = 42
3> myVariable = 50
4> let myConstant = 42
myConstant: Int = 42
5> println(myVariable)
50
6> let label = "The width is "
label: String = "The width is "
7> let width = 94
width: Int = 94
8> let widthLabel = label + String(width)
widthLabel: String = "The width is 94"
9> :exit
GoldCoast:~ macmark$
答案 3 :(得分:15)
与从终端运行Swift的方式相同,您也可以执行脚本。 只需使用以下shebang,然后运行您的脚本。 (As per Chris Lattner,斯威夫特的创造者)
#!/usr/bin/env xcrun swift -i
答案 4 :(得分:15)
在安装了命令行工具的Xcode 6.1.1中,您可以通过以下方式直接引用/usr/bin/swift
来执行脚本:
#!/usr/bin/swift
let variable: String = "string"
print("Test \(variable)")
答案 5 :(得分:9)
如果有人关心一个简单的Swift脚本shebang:
#!/usr/bin/env xcrun --sdk macosx swift
如果需要特定的目标版本
#!/usr/bin/env xcrun --sdk macosx swift -target x86_64-macosx10.11
如果需要特定的工具链(比如你想使用Swift 2.3,但你使用的是Xcode 8)
#!/usr/bin/env xcrun --toolchain com.apple.dt.toolchain.Swift_2_3 --sdk macosx swift -target x86_64-macosx10.11
如果你想在你的Xcode 7.3.1中使用Swift 2.2,我们假设Xcode 7.3.1位于/Applications/Xcode7.app
sudo xcode-select -s /Applications/Xcode7.app/
xcrun --sdk macosx swift
从现在开始,默认的活动开发人员目录已更改,您可以使用以下命令检查:
xcode-select -p
如果您想使用Swift.org提供的快照,请不要错过Installation here。
中首先回答答案 6 :(得分:8)
**更新xcode6 beta 4 **
这也可以在xcode首选项上完成。只需转到xcode - >偏好 - >位置。
对于命令行工具,只需从下拉列表选项中选择所需的版本,请参阅下面的图片。 (swift要求路径为xcode6的路径)。
我也会在下面留下我之前的答案。
Kaan说过,您也可以使用苹果脚本制作简单的应用程序,以便您可以使用它来回切换。
打开苹果脚本>粘贴下面的代码&将其导出为应用程序,只需单击一下即可切换到默认路径或beta路径(使用swift)
set xcode6Path to "xcode-select -switch /Applications/Xcode6-Beta.app/Contents/Developer"
set xcodeDefaultPath to "xcode-select -switch /Applications/Xcode.app/Contents/Developer"
display dialog "set xcode sdk path to " buttons {"xcode 6", "default"} default button 1
copy result as list to {buttonPressed}
if buttonPressed is "default" then
try
do shell script xcodeDefaultPath with administrator privileges
end try
else
try
do shell script xcode6Path with administrator privileges
end try
end if
然后运行> xcrun swift
<强>声明强>
xcrun swift
,因为已经为您设置了路径。 答案 7 :(得分:6)
安装官方Xcode 6.1版本后,swift
中有一个/usr/bin/swift
命令。
请记住,如果您在路径中使用与Apple提供的Python不同的Python,则swift
可能会因ImportError: No module named site
而失败。在这种情况下,请确保在致电export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin
之前执行swift
。
答案 8 :(得分:5)
xcrun命令将使用DEVELOPER_DIR环境变量覆盖当前选定的Xcode安装(使用xcode-select设置)。您可以使用它来构造一个单独的命令,该命令将在命令行上运行swift并将您置于REPL中。看起来像这样:
/usr/bin/env DEVELOPER_DIR=/Applications/Xcode6-Beta.app/Contents/Developer xcrun swift
你可以将其别名为'swift':
alias swift="/usr/bin/env DEVELOPER_DIR=/Applications/Xcode6-Beta.app/Contents/Developer xcrun swift"
作为一个有趣的旁注,您可以使用相同类型的调用来运行swift脚本,就像使用bash或python一样,添加-i:
#!/usr/bin/env DEVELOPER_DIR=/Applications/Xcode6-Beta.app/Contents/Developer xcrun swift -i
println("Hello World!")
当然,一旦正式发布Xcode 6并将其切换为默认开发人员工具,您可以删除DEVELOPER_DIR = ..位并使用“xcrun swift”。
答案 9 :(得分:4)
确保安装 xcode 6.0 ,但不安装 6.1
如果您收到错误:
<unknown>:0: error: the SDK 'MacOSX10.9.sdk' does not support Swift
运行
xcrun --sdk iphonesimulator8.0 swift
或者你可以
export SDKROOT="iphonesimulator8.0"
然后
xcrun swift
使用&#34; xcodebuild -showsdks
&#34;列出可用的SDK名称。
如果您安装 xcode 6.1 ,只需
sudo xcode-select -s /Applications/*your-Xcode-6.1-path.app*/Contents/Developer
xcrun swift
答案 10 :(得分:2)
对于XCode6,请运行以下命令:
$ sudo xcode-select -s /Applications/Xcode.app/Contents/Developer/
$ xcrun swift
如果您收到错误:
<unknown>:0: error: the SDK 'MacOSX10.9.sdk' does not support Swift
尝试:
xcrun swift -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk
答案 11 :(得分:1)
打开终端,
$ sudo xcode-select -switch /Applications/Xcode6-Beta6.app/Contents/Developer
注意: Xcode6-Beta6.app
应更换为您安装的相应版本
然后将此行alias swift='xcrun swift'
添加到~/.bash_profile
和
$ source ~/.bash_profile
$ swift
你去吧!
答案 12 :(得分:1)
借助Swift REPL(读取评估打印循环)。
熟悉解释型语言的开发人员将在此命令行环境中感到舒适,甚至有经验的开发人员也将发现一些独特的功能
启动Terminal.app,然后输入swift并按Enter。然后,您将进入Swift REPL。
1> print("Hello Swift REPL")
Hello Swift REPL
2> 10 + 20
$R0: Int = 30
3> var name = "Yogendra Singh"
name: String = "Yogendra Singh"
4> print(name)
Yogendra Singh
5>