2013-01-21 9 views
5

Ich habe eine App mit Core Data Framework. Ich habe gut gearbeitet. Ich habe gerade das Datenmodell geändert - ein Attribut zu einer Entität hinzufügen. Und wenn ich versuche, es zu bauen, bekam ich einen Fehler:Fehler: doppelte Symbole für Architektur armv7 nach Änderung Core Data Model

duplicate symbol _OBJC_METACLASS_$_AccountFolder in: 
/Users/XXX/Library/Developer/Xcode/DerivedData/MyApp-bxsswgxdenxgjweotkkkckaoalat/Build/Intermediates/MyApp.build/Debug-iphoneos/MyApp.build/Objects-normal/armv7/AccountFolder-33D7EA63E98D6090.o 

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

ich einige Suche tat, und die meisten Menschen diesen Fehler ist von Vertippen .h .m oder importieren gleichen .h mehrmals. Ich habe meinen Code überprüft. Ich habe das nicht. Und das Coredata-Framework ist immer noch da.

Weiß jemand, was sonst kann der Grund sein? Danke.

+0

Versuchen Sie, Ihre abgeleiteten Daten zu löschen, das kann oft helfen. – Bergasms

+0

Überprüfen Sie, ob mehrere NSCase-Unterklassendateien generiert wurden, nachdem Sie diese Änderung vorgenommen haben. Wenn ich richtig liege, sollte es nach der Änderung des Attributs doppelte Dateien geben. Check-in Finder-Fenster sowie Projekt. – iDev

+0

@Bergasms Meinst du Produkt/sauber? Ich habe das gemacht. Es ist immer noch dasselbe. – user1491987

Antwort

9

Überprüfen Sie, ob mehrere Unterklassen-Dateien NSManagedObject generiert werden, nachdem Sie diese Änderung vorgenommen haben. Nach der Änderung des Attributs sollten doppelte Dateien generiert werden. Überprüfen Sie sowohl das Finder-Fenster als auch das Projekt und entfernen Sie die doppelten Dateien. Das sollte dieses Problem beheben.