Gradle を使用する Java アプリケーションがあります。現在、リソース ディレクトリには、Typesafe ConfigおよびLog4J構成ファイルが含まれています。
これらのファイルは両方とも、アプリケーションが開発用に構築されているか、運用用に構築されているかに基づいて、異なる設定になります。たとえば、本番環境では Log4J が INFO レベルでのみログを記録するようにします。
環境変数を使用してこれらの設定を交換することができません。私の唯一の選択肢は、これらのリソース ファイルを使用することです。
理想的には、Gradle 構成に 2 つのソース セット (1 つは開発 (メイン) 用、もう 1 つは製品用) を作成し、Gradle にこれらのソース セットごとに jar を作成させたいと考えています。メイン ソース セットは引き続き src/main/resources をリソース ディレクトリとして使用し、prod ソース セットは src/main/resources-prod をリソース ディレクトリとして使用します。
これらのリソース ディレクトリが他の場所にあっても問題ありません。上記は単なる例です。
現在、私の Gradle 構成の唯一のカスタム部分は次のとおりです (コンパイル依存関係の追加を除く)。
task buildZip(type: Zip) {
from compileJava
from processResources
into('lib') {
from configurations.runtime
}
}
build.dependsOn buildZip
これを達成する方法を知っている人はいますか?