1.先说下缘由,项目没有使用配置中心,所以本地和开发有不同的build.gradle文件
def env=System.getProperty("profile") ?:"dev"
if(env=='prd'){
apply from:"build-prd.gradle"
}else{
apply from:"build-dev.gradle"
}
所以代码是这样的。
如何打包呢,直接 gradle bootWar -Dprofile=prd 即可.
2.如果也想application.properties配置文件开发打包呢?哈哈,可以这样写
def env=System.getProperty("profile") ?:"dev"
bootWar {
doFirst {
def file=new File("${buildDir}/resources/main/application.properties")
println("正在编译war包---环境[${env}]")
file.newWriter(false).with {
it.write("spring.profiles.active=${env}")
it.flush()
it.close()
}
}
}
当然你的springBoot工程要配置成多环境
将默认的application.properties 修改成
spring.profiles.active=dev
然后分别增加各个版本的版本文件,如