2017-03-27 16 views
1

私は、ビルド目的のためにgradleを使用しているjavaプロジェクトを持っています。Javaのビルドでgradleメタデータの場所を変更する方法

すべての成果物がダウンロードされ管理される場所にGRADLE_USER_HOMEを設定しました。これはうまく動作しています。

ビルド後に生成された.gradleフォルダには、以下のディレクトリがあります。
1. taskArtifacts - >これは、ファイルを持っている(fileHashes.bin、fileSnapshots.bin、taskArtifacts.binとtaskArtifacts.lock)

2.タスク

私はプロジェクトに関するこれら.gradleフォルダストアいくつかのメタデータを理解しますビルド履歴。 .gradleフォルダの場所を外部の場所に移動してそこから使用することは可能ですか?もしそうなら、どうすればいいですか?

+0

はい、特定のビルドに固有のこのフォルダを格納するメタデータ - 例えばタスクキャッシュ。通常、このフォルダはSCM無視ファイルに追加されます。外側に移動できるかどうかはわかりませんが、外側に移動することはできません。そうであれば、1回のビルドごとに異なる場所が必要になります。 – Opal

+0

たとえば、プロジェクトのビルドは毎回異なるマシンでスケジュールされ、ビルドが完了したらクリーンアップされるので、このビルドが集中した場所に.gradleを保持して、新しいビルドでメタデータを利用できるようにしたいとします。このメタデータをある場所に保存することはできますが、集中した場所に置く方がよいでしょう。 –

+0

メタデータを外部の場所にコピーしてビルド中に新しいワークスペースにコピーしようとしましたが、古いメタデータを選択しませんでした。 - >:compileJava - インクリメンタルではありません(例えば、出力が変更された、前の実行がないなど)。 –

答えて

1

--project-cache-dir引数を渡すことで、私はローカルキャッシュの場所を変更できます。

https://docs.gradle.org/current/userguide/gradle_command_line.html

+0

docs: ** - project-cache-dir ** 'プロジェクト固有のキャッシュディレクトリを指定します。デフォルト値はルートプロジェクトディレクトリの.gradleです。 – mxttie

関連する問題