我正在评估我的 Spring Boot 项目的 gradle。一切似乎都有效,但这就是我陷入困境的地方。我有 2 个属性文件。一个用于产品,即:
application_prod.properties
另一个用于质量保证,即:
application_qa.properties
我的要求是,当我从 gradle 构建(创建 jar 文件)项目时,我必须将属性文件重命名为
应用程序属性
然后构建 jar 文件。据我所知,gradle有一个默认的构建任务。因此,在这里我必须重写它,以便它只考虑所需的属性文件并重命名它,然后根据环境进行构建。
我怎样才能实现这个目标?
你需要做的是覆盖processResources
配置:
processResources {
def profile = (project.hasProperty('profile') ? project.profile : 'qa').toLowerCase()
include "**/application_${profile}.properties"
rename {
'application.properties'
}
}
更改以下代码后,您将得到以下输出:
$ ./gradlew run -Pprofile=PROD
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:run
LOL
Profile: PROD
BUILD SUCCESSFUL
Total time: 3.63 secs
$ ./gradlew run -Pprofile=QA
:compileJava UP-TO-DATE
:processResources
:classes
:run
LOL
Profile: QA
BUILD SUCCESSFUL
Total time: 3.686 secs
$ ./gradlew run
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:run
LOL
Profile: QA
BUILD SUCCESSFUL
Total time: 3.701 secs
Demo is here.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)