我有使用Gradle的Java应用程序。目前,我的资源目录包含Typesafe Config和Log4J配置文件。
根据我的应用程序是为dev还是生产构建,这两个文件都有不同的设置。例如,我希望Log4J仅在生产中记录INFO级别。
我无法使用环境变量来交换这些设置,我唯一的选择是通过这些资源文件来完成。
理想情况下,我希望能够在我的Gradle配置中拥有2个源集 - 一个用于dev(主要)和一个用于prod - 并且让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
有谁知道如何实现这个目标?