2009-10-11 4 views
6

최근 Xcode 3.2에서 Snow-Leopard가 부족한 코드 생성 기능이 추가 된 것처럼 보입니다.Xcode 3.2.1 - 코어 데이터가 생성되는 클래스가 왜 빌드 오류입니까?

  1. 하나 (가역성)를 포함하여 몇 기관과 간단한 .xcdatamodel 모델을 정의하는 하나 : 많은 관계 (AN Endpoint 많은 Subscription 개체가)

  2. 나는 다음과 같은 조치를 취했다 파일 -> 새로 만들기를 클릭하고 아이콘없는 "관리 객체 클래스"를 선택하십시오. 저 마법사에게서, 나는 나의 종류를 선택하고 나는 인종에이었다.

  3. 내가 만들려고 할 때까지. 나는이 결과를 얻을 알아낼 수 없습니다 :

정의되지 않은 심볼 : "_OBJC_METACLASS _ $ _ NSManagedObject"에서 참조를 : _OBJC_METACLASS _ $ _ 서브 스크립 션에 가입-B5BE258DF28BC03B.o _OBJC_METACLASS _ $ _ 엔드 포인트 엔드 포인트입니다. 에서 참조 오 "_OBJC_CLASS _ $ _ NSManagedObject": _OBJC_CLASS _ $ _에 가입 구독-B5BE258DF28BC03B.o _OBJC_CLASS _ $ _ 엔드 포인트 Endpoint.o에서 LD : collect2 찾을 수 없습니다 기호 (들) : 신분증 1 개 종료 상태를 반환

내가 도움 싶지만 무엇 : 사람이 그냥 뭘 잘못했는지의 어떤 아이디어가있는 경우

  1. 을, 그 환상적 일 것입니다.

  2. Xcode에서 파일을 다시 생성하고 다시 생성하고 다시 바꾸는 방법은 Xcode에서 새로운 클래스와 이전 클래스에 대한 중복 참조가되는 것입니다. 프로젝트에서 옮겨 놓은 폴더에 쓸모없이 남겨진 클래스 파일. 누구든지 올바르게 동기화 할 수있는 방법을 알고 있습니까? 새로운 내용을 다루는 Apple 설명서를 찾지 못했습니다.

답변

25

CoreData.framework를 프로젝트에 추가했거나 실수로 제거 했습니까? 링크 오류의 원인 일 수 있습니다.

또한 Wolf Rentsch의 MOGenerator를 확인해 보시기 바랍니다. 세대 갭 패턴을 사용하는 코어 데이터 클래스를위한 더 강력한 코드 생성기는 입니다. 사용자 정의 코드를 유지하면서 xcdatamodel을 저장할 때마다 자동으로 클래스를 재생성 할 수 있습니다.

+0

응답 해 주셔서 감사합니다. 내가 가진 줄 알았지 만 그럴 가능성이있어. MOGenerator에 대해 간략하게 살펴 보았지만 Apple이 Xcode 3.2에 비슷한 기능을 제공 한 것처럼 보였으므로 평가할 시간이 없었으며 갑자기 쓸모없는 도구를 내 워크 플로에 추가하고 싶지 않았습니다.Xcode 기능이 실제로 문서화 된 것은 아니기 때문에 MOGenerator에 대해 알게되는 시간을 보낼 수도 있습니다. 감사! –

+0

Xcode 3.2.x가 xmo'd 통합을 깨뜨 렸습니다. 10/13/09 현재이 질문을 보는 모든 사용자에게 MOGenerator를 가져 오는 중입니다. http://www.openradar.me/7289446 –

9

가장 간단한 (가장 빈번하고 간과하기 쉬운) 방법은 실수로 이전 MOC 클래스 (프로젝트 나 다른 그룹의 다른 그룹)를 참조하지 않고 새로운 MOC 클래스 세트를 생성하는 경우입니다. . 나는 이것이 내가 정확히 한 일임을 깨닫기 전에 너무 오랫동안 XCode를 상대로 머리를 치는 것을 보냈다.

+1

정확히 무엇을할까요? 나에게 발생했던 일. 관리 대상 개체 클래스를 다시 생성했지만 대상 폴더를 변경하는 것을 잊었습니다. 이로 인해 프로젝트의 동일한 파일에 대한 두 개의 참조가 생성되었습니다. –

관련 문제