web-dev-qa-db-ja.com

プロジェクトファイルを開くとXcodeがクラッシュする

プロジェクトファイルを開くと、Xcodeがクラッシュし続けます。私は何週間もそれをうまく開けることができました。診断方法がわからない。特定のプロジェクトでのみクラッシュします。

Process:         Xcode [1293]
Path:            /Developer/Applications/Xcode.app/Contents/MacOS/Xcode
Identifier:      com.Apple.Xcode
Version:         3.2.5 (1760)
Build Info:      DevToolsIDE-17600000~5
Code Type:       X86-64 (Native)
Parent Process:  launchd [189]

Date/Time:       2010-12-15 16:05:24.659 -0700
OS Version:      Mac OS X 10.6.5 (10H574)
Report Version:  6

Interval Since Last Report:          201 sec
Crashes Since Last Report:           4
Per-App Interval Since Last Report:  80 sec
Per-App Crashes Since Last Report:   4
Anonymous UUID:                      2B7F7CFC-45EA-450C-8467-6BF1E356B6F6

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000025940
Crashed Thread:  10  Dispatch queue: com.Apple.Xcode.index-access

Application Specific Information:
objc[1293]: garbage collection is ON
49
Sheehan Alam

クラッシュは通常、プロジェクトファイルが破損している兆候です。これを修正するためにできることのリストを次に示します。

1.破損した*.pbxprojファイルを修正する

マージの競合が原因

バージョン管理を使用している場合は、まだ解決されていないマージの競合が原因である可能性があります。

  1. Finderを使用して、プロジェクトを保持するディレクトリを開きます。
  2. プロジェクトファイルYOUR_PROJECT_NAME.xcodeprojOpen Withを右クリックして、Sublime Textなどのテキスト編集ツールを選択します。
  3. 一連の=========バーを使用して通常マークされるマージの競合を探します。
  4. マージの競合を手動で解決するか、片側の変更を削除してください。

判読できないXMLが原因

それが失敗した場合は、ファイルに移動し、すばやくスクロールして、適切でないものがあるかどうかを確認します。通常、XMLは読み取り可能なはずです。それに対してXMLバリデーターを試して、何か誤りが見つかったかどうかを確認することもできます。

2.ワークスペースをリセットします

  1. Finderを使用して、プロジェクトが格納されているディレクトリを開きます。
  2. プロジェクトファイルMyProject.xcodeprojを右クリックし、Show Package Contentsを選択します。
  3. xcuserdataフォルダーを削除します。このフォルダーには、ユーザー名が含まれているフォルダーが含まれています。
  4. ワークスペースファイルMyProject.workspaceに対して手順2と3を繰り返します

以下の回答について KennyWinker および Paul R によって詳しく説明されています

3. Xcodeプロジェクトを再作成します

大規模なプロジェクトで行うのは非常に退屈なので、これが最後の手段になることに注意してください。

最後に、単純に再作成できます。それは大変なことのように思えるかもしれませんが、基本的には新しいプロジェクトを作成し、「Classes」フォルダーの下のすべてをXcodeにドラッグして使用を開始できます(必要なフレームワークも追加することを忘れないでください)。

@Paul Rのコメントを明らかにしたかっただけです。

プロジェクトファイルを開くたびにXcodeがクラッシュする状況がありました。開いていたIBウィンドウに接続しているようです。最後に、これを解決したのはMyProject.xcodeproj/project.xcworkspace/xcuserdata/の内容を削除することでした。ワークスペースをリセットすることでこれを行いました(開いているファイル、ウィンドウのスケーリングなど)。

これがお役に立てば幸いです。

80
Kenny Winker

何がうまくいったか?

私のために働いた唯一の解決策は、ぶら下がっているプロジェクトの派生データフォルダー、つまり上記のディレクトリにある派生データフォルダーを削除することでした:~/Library/Developer/Xcode/DerivedData/。それが誰かを助けることを願っています。

何をしなかったのですか?

他の場所で述べたように、MyProject.xcodeproj/project.xcworkspace/xcuserdata/またはMyProject.xcodeproj/xcuserdata/が機能しませんでした。

40
Shobhit Puri

@Kenny Winkerの回答に余分なコンテンツを追加したかっただけです...

Xcodeユーザーデータを削除するには、

  • Xcodeプロジェクトファイルの例:MyProject.xcodeprojまたはMyProject.xcworkspace
  • それを右クリックしてShow Package Contentsを選択します
  • 最後に、フォルダxcuserdata内のすべてを削除します
  • できた! :)

うまくいけば、これにより、プロジェクトのユーザーデータの場所を知らない人にもう少しコンテキストが追加されます。

9
valbu17

Xcode 8.1でも同様の問題がありました。理由は多分_project file contains merge conflict data._これは_opening Xcode project file in TextEdit._で削除できます

しかし、私の場合、マージの競合はありませんでした。単にDerivedDataのコンテンツを削除するだけでうまくいきました。

_Steps :_

  1. Finderウィンドウを開き、Go Tab -> Go to Folder… (or press Cmd + shift + G)を選択します

Screenshot 1

  1. _~/Library_と入力し、Goを押します。これにより、デフォルトで非表示になっているライブラリフォルダーが開きます。

Screenshot 2

  1. _Developer -> Xcode -> DerivedData_フォルダに移動します。 _Delete all the content of this folder._ DerivedDataはキャッシュのようなものです。つまり、アプリをビルド/実行するたびに作成されます。

Screenshot 3

  1. プロジェクトを開きます。問題なく動作するはずです。
4

私のために働いた@Sean Dのコピーの回答。

ここで提案を確認した後、Xcodeの設定を削除してこの問題を解決しました。これを行う最も信頼できる方法は、Xcodeの終了後に発行される次の端末コマンドです。

defaults delete com.Apple.dt.Xcode

ETA:他の提案では、特定の個人設定を変更または削除する必要がありましたが、それらのいくつかを試した後、どれもうまくいきませんでした。 6と7b3の間の設定には複数の非互換性があるように見えるので、設定を完全に破棄することでそれらすべてを回避する必要があります。

2
Desert Rose

コンピュータの再起動

worked私にとって。ながら

xcuserdata deletion

そして

defaults delete com.Apple.dt.Xcode

機能しませんでした私にとって。

Xcodeを単独で開くことも、プロジェクトまたは単一の.mファイルを開くこともできませんでした。

1
zeeawan

Images.xcassetsを開くたびにXCodeがクラッシュしました。解決策は、私が追加したばかりの破損したPDFファイルを削除することでした。

1
Morten J

同じことが私にも起こりました。修正できないバージョン管理の問題があったため、以前のバージョンに戻したところ、問題なく動作しました。 XCode 4にはまだ解決する必要があるいくつかのバグがあるように感じます。

1
Nathan Hangen

Cocoapodを使用している場合は、ポッドの統合解除、ワークスペースの削除、ポッドのインストールを試してください。これで解決しました(MacをCatalinaにアップグレードした後のXcode 11.2.1の話とそれに続くXcodeのクラッシュ)

0
brainray

特定のoriginal.mファイルを編集しようとすると、XCodeがクラッシュしました。上記の解決策はどれもうまくいきませんでしたが、これはうまくいきました:

  1. たとえば、新しい.mファイルをnew.mとして作成します。
  2. テキストエディターを使用して、XCodeの外のoriginal.mを開き、内容をコピーして、XCodeのnew.mに貼り付けます。 XCodeでの作業に戻ります。
  3. オリジナルを削除してゴミ箱に移動します。
  4. New.mの名前をoriginal.mに変更します。
  5. XCodeがクラッシュすることなく、original.mを編集できます。
0
TomV

ココアポッドに含まれるプロジェクトに向けて、ワークスペースファイルの名前を変更し、ターミナルで「ポッドインストール」を再度実行して、この問題を解決しました。

0

プロジェクトフォルダー内で、projectName.xcodeprojまたはprojectName.xcworkspaceを見つけます。ポッドをインストールしている場合は、右クリックして(パッケージの内容を表示)をクリックし、最後にxcuserdataフォルダー内のすべてを削除します。プロジェクトを起動すると、正常に機能します。

0
Muhammad Iqbal

私は多くの方法をテストしましたが、結局のところ、プロジェクトの場所のディレクトリを変更するだけで、すべての修正が行われ、Xcodeが適切に機能するようになりました。

0
jamal zare

新しいウィンドウでSwiftファイルを開いている場合(たとえば、xCodeで.Swiftファイルをダブルクリックして新しいウィンドウで開いた場合)、xCodeを開いたときに問題が発生する可能性があります。xCodeを閉じるときにこのウィンドウを開いていたと思います。その後、xCodeを開くと、このウィンドウが再び開いて、何らかの理由でxCodeがクラッシュします。クラッシュする前に、開いているウィンドウをすばやく閉じてみてください。

0
Vaidas

私の場合、2つのウィンドウがあり、1つはMacBookの内部画面にあり、もう1つは外部にあり、Xcodeがクラッシュしてxcworkspaceファイルを開こうとするとクラッシュする前にいくつかのタブが開いていました。上記の解決策は機能しませんでした。外部ディスプレイを切断した後、Xcodeはクラッシュすることなく起動し、両方のウィンドウがMacBookの画面に配置されました。ディスプレイを取り付け直し、すべてが以前と同様に機能した。

0
RTasche