2011-08-25 80 views
3

我遇到了关于核心数据的问题,我应该注意我正在使用xcode 4.2。当我尝试运行我的代码,我得到这个错误管理对象模型初始化

*****终止应用程序由于未捕获的异常“NSInvalidArgumentException”,原因是:**

“不能用零模型创建NSPersistentStoreCoordinator”我已将其追溯到xcode给出的样板文件中的这一行代码

NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"MyApp" withExtension:@"momd"]; 
__managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL]; 

哪一个返回零。现在我知道我的支持文件中有一个管理对象模型。

事情我至今尝试过:

  • 清洁项目
  • 重置内容和设置在真实设备上辛
  • 测试。
  • 重新启动的Xcode
+0

你是如何创建持久性商店协调员? –

+0

当我选择在应用程序中包含Coredata时,使用由xcode创建的函数。 ' - (NSPersistentStoreCoordinator *)persistentStoreCoordinator' – Rich86man

回答

2

你有一个名为MyApp.momd文件(和事项的情况下在设备上,但不是在模拟器)是包含在你的“复制资源”的步骤?是modelURL无,还是只有managedObjectModel

您可以查看您的Simulator目录以查看是否正在复制该文件。在~/Library/Application Support/iPhone Simulator/<version>/Applications/<ID>/MyApp.app。在Finder中,您需要使用“显示包装内容”,或者您可以使用终端去那里。

+0

我在终端中找到了.app,并且有一个MyApp.momd,但它是一个目录。它应该是?此外,URL不是零,managedObjectModel是零,所以我认为它与initWithContentsOfURL方法 – Rich86man

+0

有关。这就像在模型中的腐败。你在日志中有任何错误吗? –

+0

哇,错误在那里。 2011-08-25 19:42:32.414 cdtool_Sim [7054:7b03]无法解析格式字符串“SELECT * FROM Bet” 警告:版本哈希信息不适用于所有型号 我对谓词使用了不正确的格式。非常感谢你的帮助! – Rich86man