Xcode 3.2.1 - 为什么生成核心数据的类会导致构建错误?

Jus*_*rls 6 iphone xcode core-data

看起来最近的Xcode 3.2增加了一些代码生成细节(我认为)缺乏雪豹之前.

我采取了以下步骤:

  1. 使用一些实体定义一个简单的.xcdatamodel模型,包括一个(不可逆)一个:多个关系(一个Endpoint有很多Subscription对象)

  2. 文件 - >新建,然后选择(无图标)"托管对象类".从那个向导,我选择了我的课程,我参加了比赛.

  3. 直到,也就是说,我试图建立.我得到这个结果,但无法弄清楚:

未定义的符号: "_OBJC_METACLASS _ $ _ NSManagedObject",从引用:_OBJC_METACLASS _ $ _认购在认购-B5BE258DF28BC03B.o _OBJC_METACLASS _ $ _端点Endpoint.o "_OBJC_CLASS _ $ _ NSManagedObject",从引用:_OBJC_CLASS _ $ _认购在认购-B5BE258DF28BC03B.o _OBJC_CLASS _ $ _端点Endpoint.o ld:未找到符号collect2:ld返回1退出状态

我喜欢的帮助:

  1. 如果有人对我刚做错的事情有任何想法,那就太棒了.

  2. 看起来让Xcode生成你的类的唯一方法是File - > New并再次替换它们,其中(除其他外)会导致对新类的重复引用,并且你的旧类文件无用地留在项目中的移动文件夹.有谁知道如何正确保持这些同步?我还没有找到任何涵盖新内容的Apple文档.

Bar*_*ark 25

您是否将CoreData.framework添加到项目中(或意外删除它)?这可能是链接错误的来源.

另外,我建议你看看Wolf Rentsch的MOGenerator.对于使用代间隙模式的核心数据类,它是一个功能更强大的代码生成器.每次保存xcdatamodel时它都可以自动重新生成类,同时保留自定义代码.


Hen*_*oke 9

这种情况最简单(也是最常见,最容易被忽略)的方法是,如果您不小心生成一组新的MOC类而不删除旧的MOC类(可能在项目中的不同组或其他内容).在我意识到这正是我所做的之前,我只是花了太长时间对抗XCode.