Xcode 6ベータ3にアップデートした後、コンパイラが次のエラーでクラッシュし続けます。
/[Long-path-goes-here]/all-product-headers.yaml:4:13: error: Could not find closing ]!
'roots': [
^
fatal error: invalid virtual filesystem overlay file '/[Long-path-goes-here]/all-product-headers.yaml'
1 error generated.
以下を実行することで解決します:
{ 'version': 0, 'case-sensitive': 'false', 'roots': [] }
この後Xcodeは、このエラーでファイルを書き込めないことについて文句を言いますこれは予期されたものであり、ビルドに影響を与えていないようです。 編集:ほとんどの人にとって。実行できない場合は、Defines Module
in Build Settings
のターゲット:
Unable to write to file /Users/user/Library/Developer/Xcode/DerivedData/.. (You don’t have permission to save the file “all-product-headers.yaml” in the folder “Pods.build”.)
Apple開発者フォーラム についてのディスカッション)に敬意を表します。また、CocoaPodsの課題追跡でこの 関連する問題です にアクセスしてください。
アプリのターゲットで「Defines Module = YES」を設定してみてください。私のプロジェクトで機能します。
クリーン(command-shift-K)、およびクリーンビルドフォルダー(command-alt-shift-K)とビルドが再び機能しました。
Macから古いアーカイブとファイルをいくつか削除して容量を増やしたため、この問題が発生しました。ただし、このプロジェクトでポッドインストールを実行すると解決しました。
おそらく、.yamlファイルへのパスに'
文字が含まれています。パーサーを混乱させます。 TextWranglerを使用すると、パスの色が異なります(赤と黒)。
それが私のケースであり、プロジェクトを別のパス('
を含まない)に移動すると問題が解決しました。
現在のプロジェクトのDerivedData
フォルダーを(Xcode 8)で削除して解決しました:
Xcode
> Preferences
> Locations
タブ> DerivedData
の下にある右矢印をクリック>フォルダー内DerivedData
プロジェクトフォルダーを削除します。 Shift+Cmd+Alt+K
でもハードクリーンを実行することをお勧めします。そしてビルド。
1つのシェルコマンドで修正できます。
echo "{\n\t'version': 0,\n\t'case-sensitive': 'false',\n\t'roots': []\n}" > /[Long-path-goes-here]/all-product-headers.yaml
Xcodeエラーからパスがコピーされる場所。
背景情報については、Daniel Schlaugの回答を参照してください
私は上記/以下のすべての答えを試しました。どれもうまくいきませんでした。
ただし、Xcodeを再起動するとそれが行われました。
行方不明のファイルの実際の状況を修正しようとする狂気に入る前に、それを試してください。残りはすべて狂気です。ヘック、それがそれを修正しない場合。ここにリストされている戦略のいずれかを実行するたびに、再起動してみます。多分それらの1つはそれを修正しますが、Xcodeは再起動するまで行き詰まります。
他に何もする必要はありません。Xcodeはバグが多すぎることもあります。
このエラーが頻繁に発生するため、Daniel Schlaugの回答に基づいて簡単なbashスクリプトを作成しました。ファイルをロックする必要はありませんでした。エラーログで参照されているファイルをコピーし、それを唯一のパラメーターとして使用してください。実行する前にchmod +ux
を忘れないでください。
#!/bin/bash
if [ "$#" -eq "0" ]
then
echo "No arguments supplied"
exit
fi
rm -rf $1
echo "
{
'version': 0,
'case-sensitive': 'false',
'roots': []
}" > $1