ここに間違った情報が投稿されているようです。一部の人々は(タスクでcleanBuildCache
)Androidビルダーのキャッシュをクリアする方法について報告しますが、そのキャッシュがGradleのビルドキャッシュであるAFAIKから独立していることを理解していないようです。
私の理解では、AndroidのキャッシュはGradleのキャッシュよりも古い(そして刺激を受けた)ものですが、私は間違っている可能性があります。AndroidビルダーがGradleのキャッシュを使用して自身のキャッシュを使用するように更新されるかどうかはわかりません。
編集: Androidビルダーのキャッシュは廃止され、削除されました。Android Gradleプラグインは、代わりにGradleのビルドキャッシュを使用するようになりました。このキャッシュを制御するには、Gradleの汎用キャッシュインフラストラクチャを操作する必要があります。
ヒント:キーワード「android」に言及せずにGradleのキャッシュヘルプをオンラインで検索すると、現在関連するキャッシュのヘルプが表示されます。
編集2:以下のコメントでのtir38の質問のため、Android Gradleプラグインv3.4.2プロジェクトを使用してテストしています。Gradleキャッシュはorg.gradle.caching=true
in によって有効になりgradle.properties
ます。数clean build
回実行すると、ほとんどのタスクが2回目にFROM-CACHE
ステータスとして表示され、キャッシュが機能していることが示されます。
驚いたことに、私はcleanBuildCache
gradleタスクと<user-home>/.android/build-cache/3.4.2/
ディレクトリを持っていますが、どちらもAndroidビルダーのキャッシュの存在を示唆しています。
私は実行cleanBuildCache
し、3.4.2/
ディレクトリはなくなっています。次に私は別のことをしclean build
ます:
- 何も変更されていません。ほとんどのタスクは
FROM-CACHE
、ステータスと、キャッシュが有効な速度で完了したビルドとして表示されます。
3.4.2/
ディレクトリが再作成されます。
3.4.2/
ディレクトリが空である(2のために、長さゼロのマーカーファイルを隠さ保存)。
結論:
- すべての通常のAndroidビルダータスクのキャッシュは、Gradleによって処理されます。
- 実行
cleanBuildCache
しても、ビルドキャッシュはクリアされず、影響もありません。
- まだAndroidビルダーのキャッシュがあります。これは、Androidビルドチームが削除するのを忘れた痕跡のコードである可能性があります。あるいは、何らかの理由でGradleキャッシュを使用して移植できない、または移植できない奇妙なものを実際にキャッシュする可能性があります。(「できない」オプションは非常に改善可能です、私見。)
次に、org.gradle.caching=true
から削除してGradleキャッシュを無効にしgradle.properties
、いくつか試してみclean build
ます。
- ビルドが遅い。
- すべてのタスクのステータスは実行中であり、キャッシュまたは最新ではありません。
3.4.2/
ディレクトリは空であり続けています。
その他の結論:
- Gradleキャッシュがヒットしない場合のAndroidビルダーキャッシュフォールバックはありません。
- Androidビルダーのキャッシュは、少なくとも一般的なタスクでは、確かに以前に述べたように削除されています。
- 関連するAndroidドキュメントに古い情報が含まれています。特に、キャッシュはデフォルトで有効になっておらず、Gradleキャッシュは手動で有効にする必要があります。
編集3:ユーザーtir38は、Androidビルダーのキャッシュが廃止され、この検索で削除されたことを確認しました。tir38もこの問題を作成しました。ありがとう!
Compiler -> Gradle
しなかったためUse in-process build
です。キャッシュとは何の関係もありません