Swift SourceKitService 崩溃
Posted
技术标签:
【中文标题】Swift SourceKitService 崩溃【英文标题】:Swift SourceKitService Crashed 【发布时间】:2014-12-01 13:14:12 【问题描述】:我有一个使用 Core Data 的 Swift 项目,为 saveContext()
生成的代码导致 Xcode 因 SourceKitService Crashed 错误而崩溃。当我将其注释掉时,错误停止,似乎是self.managedObjectContext
导致了错误。我已经注释掉了我的代码,所以它就像一个新项目,但它仍然崩溃。谢谢
(Xcode 6.0.1)
func saveContext ()
if let moc = self.managedObjectContext
var error: NSError? = nil
if moc.hasChanges && !moc.save(&error)
// Replace this implementation with code to handle the error appropriately.
// abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.
NSLog("Unresolved error \(error), \(error!.userInfo)")
abort()
我创建了一个新项目并复制了我的代码,并且新项目很好(并且完全相同),因此我已将此作为潜在错误报告给苹果。
谢谢
更新:
发现这是为了让事情变得更容易:)
https://github.com/kattrali/deriveddata-exterminator
【问题讨论】:
这是一个 xcode 错误。您应该向 Apple 报告 你能把整个代码贴在这里吗? 升级到 Xcode 6.1 测试版。这解决了它。 【参考方案1】:我会在各种项目中工作并不断收到此错误,有时甚至会导致 Xcode 无法使用。我最终通过退出 Xcode,清空 ~/Library/Developer/Xcode/DerivedData
文件夹,然后重新打开项目解决了这个问题。
【讨论】:
所以这对我也有用。有趣的是,仅仅通过 Xcode 清除派生数据是不够的。完全吹走目录的内容是诀窍。 在 XCode 6.1 中仍然看到相同的问题...和相同的解决方案。 正在考虑将其添加为每分钟触发一次的 cronjob,因为 XCode 6 不断向我发送此错误的垃圾邮件... 清空整个文件夹后错误仍然存在...对于xcode 6.0.1。 我希望 xcode 有朝一日能够快速适应。自动完成甚至无法在这个 sourcekitservice 崩溃时正常工作。它只是神经!【参考方案2】:Apple 解决此崩溃版本:6.1.1
6.1.1 版的新功能
包括适用于 OS X 10.10 Yosemite、OS X 10.9 Mavericks 和 ios 8.1 的 SDK
• Fixes common causes of SourceKit crashes when working with Swift
• Additional bug fixes and stability improvements
https://itunes.apple.com/us/app/xcode/id497799835?ls=1&mt=12
您也可以使用从以下路径删除您的项目来解决此问题
~/Library/Developer/Xcode/DerivedData
【讨论】:
如果这是真的,那将是个好消息! 我正在运行 6.1.1,但我仍然一直收到此崩溃。 不,它不是固定的。我下载这个小更新只是因为 Apple 说他们修复了这个错误。 @Krishnabhadra 和 Rob 我在 facebook sdk 的 Facebook.framework 中遇到了同样的问题,但在 Xcode 6.1.1 中它的工作.. 我在 XCode 6.2 上,清空该文件夹的内容并重新打开项目后,当我尝试使用 Xcode 6.2 中的“查找和替换工具”时,它仍然无缘无故崩溃。以上是关于Swift SourceKitService 崩溃的主要内容,如果未能解决你的问题,请参考以下文章