我在Swift / SpriteKit / MacOS中有一个简单的应用程序,我用来学习Swift。它主要处理文本文件 - 我很高兴地说,Swift很擅长。
我下载了1.2并运行了转换器,它建议改变一行代码:
NSApplicationMain(C_ARGC, C_ARGV)
必须成为:
NSApplicationMain(Process.argc, Process.unsafeArgv)
现在,当我运行应用程序时,它会在该行上以BAD_EXEC_ACCESS崩溃。堆栈似乎没有显示任何有趣的东西;它看起来很早就崩溃了。
我在线上设置断点并输入输入:
["/Development/PAIS/DerivedData/PAIS/Build/Products/Debug/PAIS.app/Contents/MacOS/PAIS", "-NSDocumentRevisionsDebugMode", "YES"]
似乎没有任何异常。
答案 0 :(得分:0)
我发现Xcode偶尔因为数据缓存而倾向于混淆。尝试关闭Xcode,删除" DerivedData"文件夹并再次重新打开Xcode。然后它会重新索引所有内容,希望这会对您的问题进行排序。
答案 1 :(得分:0)
好的,我希望这能节省一些时间。问题是fullName.componentsSeparatedByString
,其中有一个错误,它在Obj-C端释放字符串并在下一个GC循环中导致双重释放。请改用split(striped!, { $0 == " "}, maxSplit: Int.max, allowEmptySlices: false)
,尽管显然要慢得多。