我的xdatamodeld文件收到此警告:“版本哈希信息并非适用于所有型号”。我怎么摆脱这个?当我将应用程序安装为新的时,我也开始在启动时崩溃...想知道它们是否相关?这是崩溃:
* 由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'无法使用nil模型创建NSPersistentStoreCoordinator'
答案 0 :(得分:3)
这是iOS5测试版问题,原因是您的模型文件中有获取请求。目前,删除获取请求会修复它。
答案 1 :(得分:0)
我在使用iOS 5 beta 5安装Xcode 4.2后遇到了同样的问题,也许它在那里? 我没有在昨晚使用Xcode 4.1在我的生产系统上工作。不幸的是我现在正在重新安装它,并且需要一段时间才知道这是否是原因。
答案 2 :(得分:0)
第一个错误表示您有多个.xcdatamodel
个文件具有相同的名称但版本不同。其中一个倍数缺少内部版本号,即版本哈希值。
第二个错误是由第一个错误引起的,因为托管对象模型无法通过合并具有相同名称但不同版本和未知版本的模型文件来创建自身。如果没有有效的托管对象模型,持久性存储协调器又无法初始化。
如果在开发过程中发生这种情况并且您没有故意使用多个版本,那么您可能在之前的版本中在模拟器上有一个旧的编译.mom
或.momd
文件。完全从模拟器中删除应用程序,然后在Xcode中清理整个项目并重建并重新安装。这通常可以解决问题。
答案 3 :(得分:0)
我在iOS 5 SDK上遇到了这个问题,并不是上述任何问题。我的问题是因为我在一个实体中有很多属性,我无意中有一个重复(即同一个实体中有两个lastUpdatedDate属性)。