Bezdepbonusu7Программирование: статьи и ответы

Вопрос

XCode 4: сбой при добавлении файлов/групп и не очищении проекта

Автор вопроса: ManuelОтветов: 1

У меня есть следующая проблема с одним из моих проектов:

Если я добавлю к нему какой-либо файл или группу, XCode остановится и вскоре после этого вылетит. Если я делаю проект чистым до этого, он работает нормально. Как только я сделаю сборку проекта, он снова рухнет, если я попытаюсь добавить файлы.

Любые идеи? искал решение, но безуспешно. Я использую новейший XCode 4.3.2 - новая установка не помогла.

Отчет о сбое XCode:

Process:         Xcode [7017]
Path:            /Applications/Xcode.app/Contents/MacOS/Xcode
Identifier:      com.apple.dt.Xcode
Version:         4.3.2 (1177)
Build Info:      IDEApplication-1177000000000000~6
App Item ID:     497799835
App External ID: 7171108
Code Type:       X86-64 (Native)
Parent Process:  launchd [139]

Date/Time:       2012-04-11 16:46:18.177 +0200
OS Version:      Mac OS X 10.7.3 (11D50)
Report Version:  9

Interval Since Last Report:          137545 sec
Crashes Since Last Report:           10
Per-App Interval Since Last Report:  135817 sec
Per-App Crashes Since Last Report:   10
Anonymous UUID:                      F3C112A1-E15B-4D44-9662-F13A93846AE0

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000

Application Specific Information:
ProductBuildVersion: 4E2002
UNCAUGHT EXCEPTION (NSInvalidArgumentException): -[PBXFolder targets]: unrecognized selector sent to instance 0x40b7b63e0
UserInfo: (null)
Hints: None
Backtrace:
  0  0x00007fff95298faa __exceptionPreprocess (in CoreFoundation)
  1  0x00007fff99458d5e objc_exception_throw (in libobjc.A.dylib)
  2  0x00007fff953252ae -[NSObject doesNotRecognizeSelector:] (in CoreFoundation)
  3  0x00007fff95285e73 ___forwarding___ (in CoreFoundation)
  4  0x00007fff95285c88 _CF_forwarding_prep_0 (in CoreFoundation)
  5  0x000000011175717e -[XCProjectReferenceInfo _synchronizeWithReferencedProjectIfNeeded] (in DevToolsCore)
  6  0x0000000111757dc2 -[XCProjectReferenceInfo archivableInfoDictionary] (in DevToolsCore)
  7  0x000000010dfd3c47 -[NSArray(DVTFoundationClassAdditions) dvt_arrayByApplyingSelector:] (in DVTFoundation)
  8  0x000000011166057d -[PBXProject _projectReferences] (in DevToolsCore)
  9  0x000000011164912a -[PBXArchivingBinding writeValueForObject:toPListArchiver:] (in DevToolsCore)
 10  0x0000000111648158 -[PBXObject _archiveValuesForArchiveMask:toPListArchiver:] (in DevToolsCore)
 11  0x0000000111672997 -[PBXPListArchiver _archiveObject:asWeakReference:] (in DevToolsCore)
 12  0x00000001116734e6 -[PBXPListArchiver initWithRootObject:delegate:role:] (in DevToolsCore)
 13  0x0000000111650018 -[PBXProject writeToFile:projectFile:userFile:outResultNotification:] (in DevToolsCore)
 14  0x00000001116505a4 -[PBXProject _writeToFileSystemProjectFile:userFile:checkNeedsRevert:] (in DevToolsCore)
 15  0x0000000111650655 -[PBXProject writeToFileSystemProjectFile:userFile:checkNeedsRevert:] (in DevToolsCore)
 16  0x00000001117ee0bb -[Xcode3Project writeToFilePath:forceWrite:error:] (in DevToolsCore)
 17  0x000000010e68cf2d -[IDEContainer _saveContainerForAction:error:] (in IDEFoundation)
 18  0x00007fff920caf64 __NSFireTimer (in Foundation)
 19  0x00007fff9524dc24 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ (in CoreFoundation)
 20  0x00007fff9524d776 __CFRunLoopDoTimer (in CoreFoundation)
 21  0x00007fff9522e001 __CFRunLoopRun (in CoreFoundation)
 22  0x00007fff9522d676 CFRunLoopRunSpecific (in CoreFoundation)
 23  0x00007fff965d331f RunCurrentEventLoopInMode (in HIToolbox)
 24  0x00007fff965da51b ReceiveNextEventCommon (in HIToolbox)
 25  0x00007fff965da456 BlockUntilNextEventMatchingListInMode (in HIToolbox)
 26  0x00007fff91411f5d _DPSNextEvent (in AppKit)
 27  0x00007fff91411861 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (in AppKit)
 28  0x00007fff9140e19d -[NSApplication run] (in AppKit)
 29  0x00007fff9168cb88 NSApplicationMain (in AppKit)
 30  0x000000010df8aeec (in Xcode)

Некоторая дополнительная информация, которую я нашел:

Пробовал на другом компе - тот же эффект. Но, и это может быть важно: это происходит только после того, как я сделаю настоящую сборку iPhone. Если я делаю сборку для симулятора - все работает нормально и никаких сбоев не происходит. Как только я сделал "настоящую" сборку iOS (отладку или выпуск) - она рухнет, если я внесу какие-либо изменения в проект.

  • Как вы добавляете файлы или группы? Перетаскивание или использование команды меню? Пробовали ли вы проверить, можно ли обновить настройки вашего проекта? Scott Corscadden 06.04.2012
  • Привет. Настройки моего проекта обновлены. Как перетаскивание, так и использование меню (Файл - новое, как и использование контекстного меню) приводит к сбою приложения. Реально обидно :( Manuel 10.04.2012
  • Можете ли вы поделиться копией/вставкой отчета о сбое? Т.е. трассировка стека яблока? Иногда это может указывать на что-то, что можно изменить (хотя пока это звучит как ошибка Apple, о которой стоит сообщить им). Scott Corscadden 10.04.2012
  • я добавил его ниже, так как он слишком длинный, чтобы публиковать его в качестве комментария. Кстати. - Я только что узнал ... даже изменение номера версии проекта имеет тот же эффект - Если я сделаю это без очистки - XCode выйдет из строя. Manuel 11.04.2012

xcodeioscrashios4

Ответы

Ответ 1 · рейтинг 1 · Scott Corscadden

Хорошо - это помогает немного больше. Похоже, это то, как вы настроили свои цели. Обратите внимание, что номер версии, идентификатор пакета и все эти значения "Цель приложения iOS" не сохраняются в файле project.pbxproj, а записываются в файл "MyApp-Info.plist". Я бы проверил, что файл существует и правильно соотносится со значением, установленным в настройке сборки INFOPLIST_FILE для этой цели.

Я бы также проверил, что для самого основного файла проекта "Формат проекта" установлено значение "XCode 3.2-совместимый", а не 3.1-совместимый.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы