3

プロジェクトを開こうとすると、「内部エラー」メッセージが表示されます。何が起こっているかについて何か考えがありますか?

Xcode で内部論理エラーが発生しました。不整合な状態で Xcode の実行を続行するには、[続行] を選択します。「クラッシュ」を選択して Xcode を停止し、Crash Reporter でバグを報告します。「クラッシュ」を選択すると、保存されていないデータがすべて失われます。

詳細は次のようになります。

ASSERTION FAILURE in /SourceCache/IDEFoundation/IDEFoundation-943/Framework/Classes/Model/Execution/RunContext/IDEBuildSchemeAction.m:912
Details:  (_buildableReference) should not be nil.
Object:   <IDEBuildActionEntry: 0x403120140>
Method:   -dvt_awakeFromXMLUnarchiver:
Thread:   <NSThread: 0x40010a220>{name = (null), num = 1}
Hints:   None
Backtrace:
  0  0x000000010b6a8366 -[IDEAssertionHandler handleFailureInMethod:object:fileName:lineNumber:messageFormat:arguments:] (in IDEKit)
  1  0x000000010ad201a4 _DVTAssertionFailureHandler (in DVTFoundation)
  2  0x000000010b246e89 -[IDEBuildActionEntry dvt_awakeFromXMLUnarchiver:] (in IDEFoundation)
  3  0x000000010ad2585a -[DVTXMLUnarchiver decodeElementNodeWithXMLTextReader:owner:container:parsingState:success:error:] (in DVTFoundation)
  4  0x000000010ace024a -[DVTXMLUnarchiver decodeNodeWithXMLTextReader:owner:container:parsingState:error:] (in DVTFoundation)
  5  0x000000010ad25551 -[DVTXMLUnarchiver decodeElementNodeWithXMLTextReader:owner:container:parsingState:success:error:] (in DVTFoundation)
  6  0x000000010ace024a -[DVTXMLUnarchiver decodeNodeWithXMLTextReader:owner:container:parsingState:error:] (in DVTFoundation)
  7  0x000000010ad25551 -[DVTXMLUnarchiver decodeElementNodeWithXMLTextReader:owner:container:parsingState:success:error:] (in DVTFoundation)
  8  0x000000010ace024a -[DVTXMLUnarchiver decodeNodeWithXMLTextReader:owner:container:parsingState:error:] (in DVTFoundation)
  9  0x000000010ad25551 -[DVTXMLUnarchiver decodeElementNodeWithXMLTextReader:owner:container:parsingState:success:error:] (in DVTFoundation)
 10  0x000000010ace024a -[DVTXMLUnarchiver decodeNodeWithXMLTextReader:owner:container:parsingState:error:] (in DVTFoundation)
 11  0x000000010acdff6a -[DVTXMLUnarchiver _readAndReturnError:] (in DVTFoundation)
 12  0x000000010acdfc84 -[DVTXMLUnarchiver decodeWithRootObject:error:] (in DVTFoundation)
 13  0x000000010b245cc5 +[IDEScheme schemeFromXMLData:withRunContextManager:customDataStoreContainer:customDataSpecifier:isShown:orderHint:error:] (in IDEFoundation)
 14  0x000000010b24542e -[IDERunContextManager _updateMap:contextForCustomDataStore:specifier:] (in IDEFoundation)
 15  0x000000010b244b6f -[IDERunContextManager _customDataStoresDidUpdate] (in IDEFoundation)
 16  0x000000010ad2a9d0 -[NSObject(DVTPropertyLinking) dvt_addObserverWithName:toKeyPath:ofObject:block:] (in DVTFoundation)
 17  0x000000010b244554 -[IDERunContextManager initWithWorkspace:] (in IDEFoundation)
 18  0x000000010b2441e5 -[IDEWorkspace _setupRunContextManager] (in IDEFoundation)
 19  0x000000010b29e02e __81-[IDEWorkspace _finishLoadingAsynchronously:shouldUpgradeFromSimpleFilesFocused:]_block_invoke_0 (in IDEFoundation)
 20  0x00007fff8d9a3b05 -[NSBlockOperation main] (in Foundation)
 21  0x00007fff8d96a6d8 -[__NSOperationInternal start] (in Foundation)
 22  0x00007fff8d97d936 ____NSOQSchedule_block_invoke_2 (in Foundation)
 23  0x00007fff81bde8ba _dispatch_call_block_and_release (in libdispatch.dylib)
 24  0x00007fff81be072a _dispatch_main_queue_callback_4CF (in libdispatch.dylib)
 25  0x00007fff81f3506c __CFRunLoopRun (in CoreFoundation)
 26  0x00007fff81f34676 CFRunLoopRunSpecific (in CoreFoundation)
 27  0x00007fff87a8231f RunCurrentEventLoopInMode (in HIToolbox)
 28  0x00007fff87a895c9 ReceiveNextEventCommon (in HIToolbox)
 29  0x00007fff87a89456 BlockUntilNextEventMatchingListInMode (in HIToolbox)
 30  0x00007fff86c93f5d _DPSNextEvent (in AppKit)
 31  0x00007fff86c93861 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (in AppKit)
 32  0x00007fff86c9019d -[NSApplication run] (in AppKit)
 33  0x00007fff86f0eb88 NSApplicationMain (in AppKit)
 34  0x000000010acb3eec (in Xcode)
 35  0x0000000000000002
4

2 に答える 2

4

Xcode のような製品で「内部エラー」が発生することはありません。バグまたは誰も起こるとは思わなかった状況が発生しています。根本的な原因は、おそらくある種の不正なプロジェクト ファイルです。スタック トレースから、Xcode が XML ファイルを読み取っていることがわかります。Xcode がプロジェクトを開いたときに発生するとおっしゃいました。

まず、新しいプロジェクト ファイルを作成してから、プロジェクトにすべてのファイルを追加します。これは面倒なことですが、多くの場合、プロジェクト ファイルに関連する問題から回復するための最も効果的な方法です。

それが大変な作業のように思え、何が問題なのかわかっていると思われる場合は、既存のプロジェクト ファイルを手動で編集してみてください。プロジェクト ファイルを Control キーを押しながらクリックし、コンテキスト メニューから [パッケージの内容を表示] を選択して、プロジェクト ファイル内のファイルを表示します。これは、実際にはファイルのバンドルです。次に、好みのテキスト エディタで「project.pbxproj」ファイルを開き、プロジェクトを定義する XML を確認します。ファイルの構造を確認するのは難しくないので、問題を発見できる可能性があります。

たとえば、昨夜、誤って Xcode 自体をプロジェクトのフレームワークの 1 つとして追加してしまいました。これにより Xcode がハングアップし、強制終了する必要がありました。さらに悪いことに、Xcode は、最後に終了したときに開いていたプロジェクトを開こうとするため、Xcode を再度起動すると、別のハングが発生しました。(Xcode を起動するときに Shift キーを押し続けると、これを回避できます。) TextMate でプロジェクト ファイルを開き、リンクされたフレームワーク セクションで Xcode.app への参照を見つけて、それらを削除しました。手術は成功し、患者は完全に回復しました。

于 2012-04-22T17:11:21.173 に答える
0

これは、プロジェクト ファイルまたは Xcode 構成ファイルが破損している可能性があります。これらはどちらも XML ファイルであり、スタック トレースが xml 解析の問題を示している理由を説明しています。スタック トレースは、(IDE プレフィックスから) Xcode が統合開発環境としての組織化を試みているときにエラーが発生したことも示しています。

以下にいくつかのオプションを示します。

  1. Xcode で別のプロジェクトを開くか作成してみてください。これができる場合は、既存のプロジェクトを Xcode で開いてみてください。
  2. 別のマシン、または現在のマシン上の別のバージョンの Xcode で、Xcode の別のインストールでプロジェクトを開いてみてください。プロジェクトが別のインストールで開く場合は、Xcode を再インストールします。
  3. 新しいプロジェクトを作成します。一度にいくつかの h、m、およびリソース ファイルをすべてコピーします。プロジェクトを新たに設定します。
  4. プロジェクト ファイルをテキスト エディタで開いて、不正な形式の xml を見つけようとする可能性があります。(あまり楽しくない)
于 2012-04-27T20:36:19.687 に答える