«Компиляция версии модели данных» .. ошибка после обновления до Lion (Xcode4.1) - PullRequest
13 голосов
/ 22 июля 2011

После обновления до Lion вчера (10.6-> 10.7) я не смог скомпилировать проект, у которого не было проблем с компиляцией до обновления.

Это даже не недавнее изменение в проекте, которое вызывает эту ошибку: если я извлекаю из SVN версию проекта несколько дней или неделю назад, я получаю ту же ошибку при сборке:

"Command /Developer/usr/bin/momc failed with exit code 6", который расширяется до следующего:

Ошибка сборки:

DataModelVersionCompile /Users/ian/Library/Developer/Xcode/DerivedData/inventory-gtvznzuhomhlakbdpocaqwnrihhx/Build/Products/Debug-iphonesimulator/inventory.app/inventory.momd inventory/inventory.xcdatamodeld
cd /Users/ian/AppsDev/uk.co.isurvey-inventory/ios/inventory/trunk/inventory
setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/usr/bin/momc -XD_MOMC_SDKROOT=/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk -XD_MOMC_IOS_TARGET_VERSION=4.3 -MOMC_PLATFORMS iphonesimulator -MOMC_PLATFORMS iphoneos -XD_MOMC_TARGET_VERSION=10.6 /Users/ian/AppsDev/uk.co.isurvey-inventory/ios/inventory/trunk/inventory/inventory/inventory.xcdatamodeld /Users/ian/Library/Developer/Xcode/DerivedData/inventory-gtvznzuhomhlakbdpocaqwnrihhx/Build/Products/Debug-iphonesimulator/inventory.app/inventory.momd

2011-07-21 19:24:44.954 momc[4436:a0b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSXMLDocument initWithData:options:error:]: nil argument'
*** First throw call stack:
(
0   CoreFoundation                      0x00007fff8e411986 __exceptionPreprocess + 198
1   libobjc.A.dylib                     0x00007fff8d0d5d5e objc_exception_throw + 43
2   CoreFoundation                      0x00007fff8e4117ba +[NSException raise:format:arguments:] + 106
3   CoreFoundation                      0x00007fff8e411744 +[NSException raise:format:] + 116
4   Foundation                          0x00007fff8c761310 -[NSXMLDocument initWithData:options:error:] + 89
5   momc                                0x0000000102f04a2c momc + 10796
6   momc                                0x0000000102f04fe8 momc + 12264
7   momc                                0x0000000102f058f0 momc + 14576
8   momc                                0x0000000102f03d20 momc + 7456
9   ???                                 0x000000000000000a 0x0 + 10
)
terminate called throwing an exception
Command /Developer/usr/bin/momc failed with exit code 6

Дальнейшее объяснение:

AFAIK, единственная разница в том, что я сейчас использую Lion и версию Xcode 4.1 для Lion (где до этого я использовал Xcode 4.1 для Snow Leopard).

Я удалил / Developer /, несколько раз переустанавливал и перезагружал также установщик App Store Xcode на случай, если он был поврежден.

Если я создаю новый проект с использованием XCode (и использую Core Data, я думаю, это связано с любой проблемой, возникающей при создании моего проекта), он собирается и работает нормально: возможно есть что-то, что мне нужно сделать, чтобы исправить мой настоящий проект?

Любые предложения будут блестящими! Ура, Ян

Ответы [ 4 ]

36 голосов
/ 21 сентября 2011

У меня была такая же проблема, OS X Lion 10.7.1, Xcode 4.1.

Проблема решается путем удаления всех каталогов * .xcdatamodel, которые не отображаются в Xcode, из каталога * .xcdatamodelid. Эти каталоги появляются после переименования * .xcdatamodel в Xcode.

Удаление можно выполнить в Терминале, с помощью меню «Показать содержимое пакета» в Finder или щелкнув правой кнопкой мыши на xcdatamodel в Xcode и выбрав «Показать в Finder».

1 голос
/ 08 мая 2013

Перезапустите XCode и удалите все данные из папки производных данных.

0 голосов
/ 15 сентября 2015

У меня внезапно возникла эта проблема на моем CI после обновления OSX (незначительное обновление). Дженкинс не мог создавать проекты Obj-C и всегда останавливался с одной и той же ошибкой (независимо от проекта / модели данных).

Исправление состояло в том, чтобы просто удалить папку производных данных и перезагрузить компьютер.

rm -rf ~/Library/Developer/Xcode/DerivedData/*
sudo reboot
0 голосов
/ 22 июня 2015

Интересно, что я обнаружил, что у меня был такой сценарий после установки новой версии Xcode . Это было вызвано тем, что Xcode запускается со смонтированного DMG. Я немного прогнал проблему, пока не понял, что она делает сборку, используя инструменты DMG, а не файлы, скопированные в Applications . Извлечение Xcode DMG решило проблему. Думаю, я опубликую это на случай, если это будет полезно кому-то еще. Я подозреваю, что ряд исправлений, публикуемых здесь и в других потоках, работают в некоторых случаях из-за перезагрузки, отключающей DMG.

...