CoreData创建托管对象子类后,编译文件重复错误
来源:互联网 发布:nba2konline考辛斯数据 编辑:程序博客网 时间:2024/06/04 19:42
作者:Mob_Developer链接:http://www.jianshu.com/p/8dd276722151來源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。** 问题描述:** 在Xcode的
.xcdatamodeld
文件中配置完实体,然后通过Editor -> Create NSManagedOnject Subclasses
生成相应的托管对象类后,报告以下错误:** duplicate symbol OBJC_CLASS$_EC_Audio in:**/Users/ryan/Library/Developer/Xcode/DerivedData/AudioRecorder-fynbzrptektfqnalzdkspcoejrvg/Build/Intermediates/AudioRecorder.build/Debug-iphonesimulator/AudioRecorder.build/Objects-normal/x86_64/** EC_Audio+CoreDataClass.o **
duplicate symbol OBJC_METACLASS$_EC_Audio in:/Users/ryan/Library/Developer/Xcode/DerivedData/AudioRecorder-fynbzrptektfqnalzdkspcoejrvg/Build/Intermediates/AudioRecorder.build/Debug-iphonesimulator/AudioRecorder.build/Objects-normal/x86_64/** EC_Audio+CoreDataClass.o **ld: ** 2 duplicate symbols for architecture x86_64 **
clang: error: linker command failed with exit code 1 (use -v to see invocation)
上面的错误是说,创建的实体类在编译时,生成重复的
EC_Audio+CoreDataClass.o
文件。可是怎么找都是只创建了一个类文件,那么何来的重复编译文件呢?** 参考链接:** Duplicate symbol error when adding NSManagedObject subclass, duplicate link
上面是
Stack Overflow
给出的答案,意思是说,当使用Core Data时,生成的实体类都放在Derived Data
文件夹,具体位置如下图:也就是由Xcode自动管理实体类,所以不需要在包中再存在。把包中的文件删除就行,如果不想删除,就到
Build Phases
中的Compile Sources
下删除对应的.m
文件但是我觉得这样不好的一点是所有的东西的配置都在
.xcdatamodeld
完成,实在不方便。所以我的做法是保留自动生成的类文件,移除上图中用椭圆圈起来的.xcdatamodeld
源文件,同样可以解决问题,好处是可以在类文件中添加我们需要的功能,而不是在.xcdatamodeld
源文件中进行。
- CoreData创建托管对象子类后 编译文件重复错误
- CoreData创建托管对象子类后,编译文件重复错误
- Xcode8创建CoreData托管对象文件,编译报错
- xcode 8 使用coredata时候生成entity手动创建managedobject文件后编译报错重复定义
- Xcode8 使用CoreData生成对象文件出现编译错误解决方案
- xcode8以上,CoreData生成对象文件运行出现文件编译错误
- Xcode8使用coreData编译错误
- 子类创建对象
- xcode8 coredata 创建 NSManagedObject Subclass 后生成四个文件,运行报错。
- 创建新托管对象NSEentityDescription
- spring 托管 工厂创建对象
- 子类对象的创建过程
- 创建子类编译报错问题
- 修改ProjectConfig.mk文件后,产生编译错误
- xcode编译后无法找到xx文件的错误解决办法
- 新建Activity后R文件消失,无法编译,错误大全
- 创建子类对象的调用顺序
- 通过__index实现创建子类对象
- linux设置java环境变量
- 永恒不变的内容营销不利于seo
- Rancher Server HA的高可用部署实验-学习笔记
- 机器学习及人工智能发展史
- 函数模版
- CoreData创建托管对象子类后,编译文件重复错误
- 基于51单片机和四位数码管的智能计算器算法
- faster-rcnn for tensorflow 测试过程
- POJ 1905.Expanding Rods
- xgboost.XGBClassifier, xgboost.train()
- crontab实现每秒去检查
- JVM类加载机制
- 【网络流二十四题 最小路径覆盖问题】【DAG 最小路径覆盖->最大流】
- 区间DP的学习(持续更新)