Gradle构建spring boot应用程序作为战争与活动配置文件

我想将我的spring boot应用程序打包为特定配置文件的战争.这可以通过在application.properties文件中设置spring.profiles.active = profile name来完成.
是否有可能在建立战争时将其设置为参数,例如. gradle build –spring.profiles.active =个人资料名称?
最佳答案
听起来你想要将spring.profiles.active的价值烘焙到战争中.您可以使用Gradle对资源过滤的支持来完成此操作.像这样配置你的application.properties:

spring.profiles.active=@activeProfiles@

然后在build.gradle中应用过滤,将@ activeProfiles @替换为属性值:

processResources {
    filter org.apache.tools.ant.filters.ReplaceTokens, tokens: [
        activeProfiles: activeProfiles
    ]
}

在这个例子中,我使用了一个名为activeProfiles的属性.然后,您必须在运行构建时提供值:

./gradlew -PactiveProfiles=foo build

转载注明原文:Gradle构建spring boot应用程序作为战争与活动配置文件 - 代码日志