Xcode 9.3 在删除实体时崩溃

Posted

技术标签:

【中文标题】Xcode 9.3 在删除实体时崩溃【英文标题】:Xcode 9.3 crashes on deleting entity 【发布时间】:2018-04-06 10:06:56 【问题描述】:

我在尝试重置实体的父级或删除实体时遇到此崩溃。

这是崩溃报告

    Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
ProductBuildVersion: 9E145
ASSERTION FAILURE in /Library/Caches/com.apple.xbs/Sources/IDEPlugins/IDEPlugins-14133/IDECoreDataModeler/ModelEditor/EditorShared/XDDiagram/XDDiagramStorage.m:364
Details:  (graphic) should not be nil.
Object:   <XDDiagramStorage: 0x7fa373ec1b50>
Method:   -removeGraphic:
Thread:   <NSThread: 0x7fa36a619650>number = 1, name = main

任何关于我做错了什么的想法,或者如果这是一个 Xcode 错误,我该如何避免这种崩溃?

【问题讨论】:

【参考方案1】:

你没有做错任何事,这显然是 Xcode 9.3 中另一个恼人的错误。 Xcode 9.4 beta 1 仍然包含这个错误。

解决方法:右键单击您的 .xcdatamodel 文件,显示包内容并编辑文件 contents。它包含作为 XML 文件的实体关系模型。您可以在那里删除实体,这相当简单。记住也要删除它在其他实体中出现的关系。

【讨论】:

在 Xcode 版本 12.3 (12C33) 上仍然会发生(有时)【参考方案2】:

Xcode 13(如果您使用的是.xcworkspace):

    删除实体中的属性和关系 删除其他实体中指向您要删除的实体的关系 退出 Xcode 从.xcodeproj打开项目 删除实体

【讨论】:

以上是关于Xcode 9.3 在删除实体时崩溃的主要内容,如果未能解决你的问题,请参考以下文章

当我删除核心数据实体的最后一条记录时,为啥我的应用程序崩溃了?

Xcode 9.3 - NSPredicate Bool 崩溃

当我关闭视图时Coredata崩溃

在 macOS 上的 SwiftUI 列表视图中选择和删除核心数据实体

Core Data - executeFetchRequest Swift 1.2 发布模式崩溃

XCode - 删除核心数据中的相关对象