web-dev-qa-db-ja.com

キャッシュを空にしてすべてのターゲットを消去する方法Xcode 4以降

Jonathanはここで提案します: Xcodeは削除された.xibファイルを含みます! すべてのターゲットをきれいにしてキャッシュを空にすると削除された.xibファイルを含むXcodeの問題は解決しますXcode 4では。

Xcode 4でそれをするには?

223
Tieme

ビルドフォルダを消去するには、Command + Option + Shift + Kを押します。さらに良いことには、Xcodeを終了して、〜/ Library/Developer/Xcode/DerivedDataを手動で削除してください。 Xcodeがどこかにあるあなたのプロジェクトの古いバージョンを実行するというバグがあるので--- allその内容を削除してください。 (Xcode 4.2では、「派生データ」フォルダが表示されます。「ウィンドウ」>「オーガナイザ」と選択し、「プロジェクト」タブに切り替えます。「派生データ」フォルダ名の右側にある右矢印をクリックします。)

シミュレータで、[iOSシミュレータ]> [コンテンツと設定のリセット]を選択します。

最後に、完全を期すために、/ var/foldersの内容を削除できます。キャッシュもあります。

警告:/ var/foldersを削除すると問題が発生することがあります。その場合は、オペレーティングシステムの修復または再インストールが必要になることがあります。

編集:私はあなたが/ var/folders /と取り組むことを恐れているなら、あなたはよりターゲットを絞った方法で削除するためにターミナルで次のコマンドを使うことができることを私は学びました:

rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"

編集:特定のSwift関連の問題のために私はそれを削除することが有用であることがわかった〜/ Library/Caches/com.Apple.dt.Xcode。これを行うと、ダウンロードしたドキュメンテーションドキュメントセットの予備コピーのように、多くのことを失いますが、それだけの価値があります。

501
matt

Command + Option + Shift + Kキーを押してください。または、製品メニューに移動してオプションキーを押すと、「クリーン」オプションが「クリーンビルドフォルダ...」に変わりますので、そのオプションを選択してください。

63
sram

私はcommand + option + shift + Kに加えて別の方法を見つけました。 XCode 4.2には、右上のアイコンから開くことができるオーガナイザーがあります。あなたはそこからすべてのアーカイブと保存されたプロジェクトオプションをきれいにすることができます。これは私の状況を助けました(私はmainBundleで古い削除されたファイルを見ていました)。

17
mert

次のことに加えて、アプリのストーリーボードのファイルがローカライズされている場合、この問題が発生する可能性があります。まず、これらのそれぞれを行います。

  • クリーンビルド
  • シミュレータをリセット
  • Xcodeを再起動
  • 〜/ Library/Developer/Xcode/DerivedDataにあるDerivedDataフォルダを削除します。
  • コンピューターを再起動

警告:追加のステップはの内容を削除することです(全体ではありません) / var/foldersこれはあなたのOSxインストールで深刻な問題を引き起こす可能性があることに注意してください、そしてあなたはもうOSxから起動できないかもしれません。その場合、唯一のオプションは回復コンソールからOSxを再インストールすることです。

私にとって最後にうまくいったのは、ストーリーボードのローカライゼーションファイルを再生成し、英語のローカライゼーションを削除することでした(Base Localeが英語なので不要でした)。ストーリーボードの文字列をリロードするには、 StackOverflowのこの回答を参照

ストーリーボードのテキスト以外の部分は更新されていましたが、ローカライズされたテキストは更新されていませんでした。あなたのアプリにローカライズがあるのなら、ローカライズが更新されていることを確認することをお勧めします(たとえそれらが.stringsファイルであっても)。

16
Samuel Spencer

私は同じ問題を抱えていると思ったので、頭から髪の毛を引き抜いています。アプリを構築するとき、私はiPhone上でシミュレータ上と同じ結果を得られませんでした。

問題は、どうにかしてMainStoryboard.storyboardファイルのローカライズ版を作成したことです。だから私は自分の携帯電話でアプリを実行したときにそれはデンマーク語版を示していた...そしてシミュレータは英語版を示していました。

ええ、私は新しいです! :)

9
thehatisonfire

/var/folders内のすべての派生データとモジュールキャッシュを削除するには この小さなRubyスクリプト を使います。

derivedDataFolder = Dir.glob(Dir.home + "/Library/Developer/Xcode/DerivedData/*")
moduleCache = Dir.glob("/var/folders/**/com.Apple.DeveloperTools*")
FileUtils.rm_rf derivedDataFolder + moduleCache

これでfatal error: malformed or corrupted AST file: 'Unable to load module "/var/folders/エラーが解決しました。

6
orkoden

Docウィンドウを開いたときにXcode 5.1がクラッシュするという問題がいくつかありました。

ウィンドウを開いている間にドキュメントセットも更新していたので、その原因はわかりません。

さて、Xcode 5ではmodulesディレクトリは現在はderived dataフォルダの中にありますが、明らかに私はこれを削除しませんでした。 〜/ Library/Developer/Xcode/DerivedData/ModuleCache〜/ Library/Preferences/com.Apple.Xcode.plistの内容を削除したところ、すべてがうまくいったようです。 Xcodeを再起動した後に動作します。

4
McUsr

Xcode 10.2とMojaveを使用した「DerivedData」は次のとおりです。

MacHD/Users/[MyUser]/Library/Developer/Xcode

1
Mahdi Moqadasi

"データモデル"を使用するとき、インスペクタにクラスを生成するためのオプションがあります。私にとっては、既存の名前を持つクラスがすでに存在していたので、これが当てはまります。

Codegen:私のためにそれを解決しました。

enter image description here

0
Wayne

Xibファイルには注意が必要です。私は上記すべてを試してみましたが、何もうまくいきませんでした。私はxibで定義されたカスタムUIButtonを使用していました、そしてそれが私がそこでプログラム的に変化していなかった属性を割り当てたという事実に関連しているかもしれないことを理解しました。そこで画像やテキストを定義している場合は、それらを削除します。私がしたとき、私のプログラム上の変更は実施され始めました。

0
Alyoshak

これがmy シェルスクリプトソリューション です。これは、Xcode 4、5、および6の場合、派生データを削除し、プロジェクトのキャッシュアセットを消去します。

場合によっては、Derived Dataディレクトリでrm -rfを呼び出すだけで、残りのファイルが1つか2つ残ることがありますが、スクリプトはすべてのファイルが削除されるまでループします。

0
Sheamus

私はほとんどすべてを試したが助けにはならなかった、私はそれが動作するときに何が起こるのかわからないSIP(システム統合保護)を無効にしたのを助けたnシステムファイルがどこで混乱し、これを引き起こす...明らかにこれを無効にする危険性があるかもしれません

ここにどうですか

1.お使いのMacの電源を入れ、[command] + [R]キーを押してリカバリパーティションにアクセスします。

2.リカバリパーティションから、メニューバーの[ユーティリティ]をクリックし、[ターミナル]を選択します。

3.ターミナルに次のコマンドを入力し、Enterを押して実行します。csrutil disable

4.コマンドが実行されたら、ターミナルを終了してMacを再起動します。 OS Xに再ログインすると、SIPは無効になります。

0