美文网首页
Xcode8 生成CoreData NSManagedObjec

Xcode8 生成CoreData NSManagedObjec

作者: 天天有写不完的代码 | 来源:发表于2017-03-04 20:40 被阅读77次

上周写CoreData的时候,当使用Editor的Create NSManagedObject SubClass 生成好对应Entity的ManagedObject后,编译的时候报Duplicate symbol error,意思是符号重复定义的错误,一脸蒙蔽好吧,都是系统生成的,我什么都没有做=。=

然后网上搜了一下,搜到了问题的原因和解决方案
duplicate-symbol-error-when-adding-nsmanagedobject-subclass-duplicate-link
xcode-beta-8-cant-create-core-data

原因

Xcode 8 的.xcdatamodeId 文件会自动生成那些Entity的类,当你在Editor->Create NSManagedObject SubClass 再次生成这些Entity类的时候,编译的时候,就会有符号重定义的错误

解决方案

  • 当你不需要自己修改NSManagedObject 文件时候,就使用Xcode生成的文件,直接引用头文件就好。
  • 当你需要自己修改NSManagedObject 文件,在Xcode中选中.xcdatamodeId 文件 在右侧属性栏中, 把Tools Version 修改成小于8.0的版本 ,然后就可以使用Editor 生成NSManagedObject类了。 修改Entity Inspector 里Class对应的Codegen
    如下图:
1.png

相关文章

网友评论

      本文标题:Xcode8 生成CoreData NSManagedObjec

      本文链接:https://www.haomeiwen.com/subject/yhvjgttx.html