GM发布的Xcode 6编译

bhz*_*zag 28 xcode ios swift

我刚下载了Xcode 6的GM版本,它不会编译出错:

Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 1
Run Code Online (Sandbox Code Playgroud)

有想法该怎么解决这个吗?

Max*_*ell 70

此错误可能由于多种原因而发生,因此这是一个调试提示.您可能想尝试xcodebuild在命令行中使用.它将为您提供有关哪些文件是罪魁祸首的详细信息.

为此,请打开终端并转到项目文件夹.在那里,输入

xcodebuild -project YourProject.xcodeproj -scheme YourScheme
Run Code Online (Sandbox Code Playgroud)

或者如果你在工作区工作

xcodebuild -workspace YourProject.xcworkspace -scheme YourScheme
Run Code Online (Sandbox Code Playgroud)

您可能会看到弹出很多消息,但在输出的最后,您应该看到导致崩溃的特定文件.回到XCode,进入这些文件并开始使用一些Swift语法来查看正在发生的事情.在我的情况下,它与setAttributeString函数有关,但我看到其他人有问题!和?

希望这会让你朝着正确的方向前进.


Byr*_*see 10

我不得不将我的"优化级别"更改为无[-0none]

目标>构建设置> Swift编译器>优化级别.

  • 我会警告有两个名为"优化级别"的设置,请确保您在Swift编译器部分下更改了一个.我失去了几个小时来解决我的案子. (2认同)

Mic*_*eft 7

我的情况有点不同,它涉及枚举和选项.为简单起见,我们来定义

enum Animal {
    case Dog
    case Cat
}

func exampleAction(animal: Animal) {}

exampleAction(.Cat)
Run Code Online (Sandbox Code Playgroud)

它会运行正常.但是,只要我将参数设为可选,就会出现错误.所以这段代码不起作用:

func exampleAction(animal: Animal?) {}

exampleAction(.Cat)
Run Code Online (Sandbox Code Playgroud)

为了使它工作,我不得不在方法调用中添加显式枚举名称.所以下面的代码再次起作用:

exampleAction(Animal.Cat)
Run Code Online (Sandbox Code Playgroud)