2015-11-11 65 views
-1

我在迅速的項目有一個老班「Approval.swift」的架構ARMv7的錯誤重複的符號

我的核心數據添加NSManagedObject(審批)和我創建NSManagedObject子類具有相同的名稱(Approval.swift)該實體

然後我改變了實體名稱爲「ApprovalObject」和相關的類ApprovalObject.swift從舊的階級區分它「Approval.swift」

,當我試圖運行項目,我得到這個錯誤

duplicate symbol _OBJC_METACLASS_$_Card in: /Users/MyUser/Library/Developer/Xcode/DerivedData/MyProject-czluntwgoefegbeilusmojsyejlc/Build/Intermediates/MyProject.build/Debug-iphoneos/MyProject.build/Objects-normal/armv7/ApprovalObject.o /Users/MyUser/Library/Developer/Xcode/DerivedData/MyProject-czluntwgoefegbeilusmojsyejlc/Build/Intermediates/MyProject.build/Debug-iphoneos/MyProject.build/Objects-normal/armv7/Card.o duplicate symbol _OBJC_CLASS_$_Card in: /Users/MyUser/Library/Developer/Xcode/DerivedData/MyProject-czluntwgoefegbeilusmojsyejlc/Build/Intermediates/MyProject.build/Debug-iphoneos/MyProject.build/Objects-normal/armv7/ApprovalObject.o /Users/MyUser/Library/Developer/Xcode/DerivedData/MyProject-czluntwgoefegbeilusmojsyejlc/Build/Intermediates/MyProject.build/Debug-iphoneos/MyProject.build/Objects-normal/armv7/Card.o

ld: 2 duplicate symbols for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)

有人可以幫我解決這個錯誤嗎? 非常感謝

+0

.h文件我想你補上一兩次。檢查一次我的意思是'ApprovalObject' – Buntylm

+0

@BuntyMadan非常感謝!是的,我檢查了ApprovalObject有一個錯誤 – Maha

+0

酷,它發生!享受 – Buntylm

回答

0

Duplicate symbols for architecture主要原因是您在項目中添加了兩次相同的.m.o文件。爲了解決這個問題,只需檢查鏈接器錯誤,就像在你的情況下顯示ApprovalObject。然後,只需去build phases然後compile sources並搜索指定的文件。

26

我在Xcode 8下得到了一個新創建的應用程序的相同類型的錯誤。在經過大量調查後,我發現參考了構建階段 - >編譯源,我發現除了包含數據模型外,還包括了數據模型。 m文件。刪除這個清除了錯誤,現在應用程序的構建和功能正確。

+0

燦爛!所有其他答案不斷提及尋找重複的.m文件,您指出了數據模型文件。我浪費了3個小時尋找鬼魂.m文件。 – Rick

+1

嘔吐。蘋果公司的什麼樣的質量控制讓這個垃圾通過? Thx爲這個答案,它標誌着結束2小時的浪費時間。 –

+0

不要爲我工作,感謝您的幫助! – Magnus

0

我得出上述生成錯誤,因爲我進口.m文件,而不是在其他.m文件

相關問題