今天項(xiàng)目中需要用到數(shù)據(jù)庫(kù),于是我就默默的直接用了系統(tǒng)自帶的coreData。
接下來(lái),在創(chuàng)建完Model.xcdatamodeld模型后,Attributes也添加完成,點(diǎn)擊Editor->Create NSManagedObject Subclass之后就出現(xiàn)重復(fù)定義的編譯錯(cuò)誤,如下圖!
剛看到這個(gè)錯(cuò)誤,以為是自己重復(fù)引入了第三方框架,找半天也沒(méi)找到,查閱網(wǎng)上資料,說(shuō)可能是引入“.h”的地方,弄成“.m”了,于是又去找引入頭文件的地方,完全沒(méi)問(wèn)題,我真真是瘋了,懷疑自己,于是又仔細(xì)的看了報(bào)錯(cuò)原因,Entity + CoreDataClass.o文件重復(fù),所以可以肯定不是別的問(wèn)題,就是模型這里出了問(wèn)題!于是仔細(xì)看File Inspector沒(méi)問(wèn)題,又看Data Model Inspector,Codegen這里是Class Definition,代碼生成是類定義,換句話說(shuō),代碼就是類自動(dòng)生成,原來(lái)系統(tǒng)默認(rèn)自動(dòng)給我們生成了NSManagedObject文件。
于是將Codegen的選項(xiàng)改成Manual/None,然后重新生成NSManagedObject,編譯,依然報(bào)錯(cuò),再去看一眼Codegen這個(gè)地方,明明改成Manual/None,但系統(tǒng)并沒(méi)有保存,于是快捷鍵command + s 保存一下,command + shift + k 清空,然后退出Xcode,重新打開(kāi)項(xiàng)目編譯就沒(méi)有問(wèn)題了!