0

我不小心删除了我的核心数据模型文件,然后我尝试重新添加它,但现在我的应用程序抛出以下内容:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Cannot create an NSPersistentStoreCoordinator with a nil model'
*** First throw call stack:
(0x1ef6022 0x186ecd6 0x1593a75 0x3021 0x2cea 0x34b0 0x26e5 0x6f0386 0x6f1274 0x700183 0x700c38 0x6f4634 0x2089ef5 0x1eca195 0x1e2eff2 0x1e2d8da 0x1e2cd84 0x1e2cc9b 0x6f0c65 0x6f2626 0x22ed 0x2255)
terminate called throwing an exception(lldb)

谁能解释我需要采取哪些步骤才能让我的应用程序再次运行?

干杯,

泰辛

4

1 回答 1

0

虽然显然应该使用某种形式的源代码控制,但这是一个小项目,所以我没有创建存储库。对于那些在同一条船上的人,以下解决了我的问题:

在方法中:

// Returns the managed object model for the application.
// If the model doesn't already exist, it is created from the application's model.
- (NSManagedObjectModel *)managedObjectModel
{
    if (_managedObjectModel != nil) {
        return _managedObjectModel;
    }
    NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"AppName" withExtension:@"momd"];
    _managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
    return _managedObjectModel;
}

我改变了这一行:

NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"AppName" withExtension:@"momd"];

到:

NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"AppName" withExtension:@"momd"];

我刚刚从模型文件扩展名中删除了“d”,一切正常。

于 2012-08-31T09:44:40.627 回答