当我尝试添加新版本的Core Data模型时,Xcode崩溃了

时间:2009-11-12 21:32:17

标签: xcode core-data

我有最新版本的Xcode,当我选择我的.xcdatamodel文件然后选择“Data Model”=> “添加模型版本”,我得到以下对话框:

内部错误

档案:...... 线:... 对象:... 方法:......

无法在版本组“MyApp1.xcdatamodeld”中创建新版本“MyApp1 2.xcdatamodel”

=====================

它清除了旧的.xcdatamodel目录,并创建了一个新的.xcdatamodeld目录,但没有任何内容。

幸运的是,我有原始目录的旧副本,我可以轻松地恢复它,但我需要以迁移旧版本的方式更新架构。

我知道如何手动完成这项工作?

2 个答案:

答案 0 :(得分:1)

有类似的问题,虽然我确实在xcdatamodeld资源组中保留了我的模型。我不得不将该资源拖回Xcode。然后更换 - (NSManagedObjectModel *)managedObjectModel; 在我的appDelegate中使用以下代码...

- (NSManagedObjectModel *)managedObjectModel {
if (managedObjectModel != nil) {
    return managedObjectModel;
}

NSString *path = [[NSBundle mainBundle] pathForResource:@"your_model" ofType:@"momd"];
NSURL *url = [NSURL fileURLWithPath:path];
managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:url];

return managedObjectModel;

}

答案 1 :(得分:0)

当项目格式设置为Xcode 3.2兼容时,我的项目就会发生这种情况。此设置位于信息窗口下,项目格式下拉列表。我已将其从默认值中更改,原因并非如此。

将其恢复为默认设置,Xcode 3.1兼容,让我的问题消失了。我正在使用3.2.4和iOS 4.1 GM SDK。