2 duplicate symbols for architecture x86_64
導(dǎo)入CoreData class后出現(xiàn)編譯報(bào)錯(cuò)
**NewsCache+CoreDataClass導(dǎo)入后編譯出錯(cuò)
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/ NewsCache+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/ NewsCache+CoreDataClass.o
ld: 2 duplicate symbols for architecture x86_64
解決辦法:
一、刪除掉自己創(chuàng)建的NSManagedObject SubClass類蜈敢,因?yàn)樵谕泄軐?duì)象中創(chuàng)建Entity屬性后會(huì)自動(dòng)生成對(duì)應(yīng)的類避除,如果自己再手動(dòng)創(chuàng)建就會(huì)導(dǎo)致重復(fù)。Build工程之后毁菱,引用的時(shí)候直接#import "EntityName+CoreDataClass.h"就可以了舍扰。
二砖茸、如果想保留自己創(chuàng)建的類酵镜,Build Settings ->Complie Source中移除對(duì)應(yīng)的.m文件碉碉。或者參照方法三:
三淮韭、.xcdatamodeld 中選擇Entity-class-codegen-manual/none即可垢粮,如下圖: