我想将我的spring boot应用程序打包为针对特定配置文件的 war 。这可以通过在application.properties文件中设置spring.profiles.active = 配置文件名称 来完成。进行战争时是否可以将其设置为参数。gradle build –spring.profiles.active = 配置文件名称 ?
听起来好像您想spring.profiles.active在战争爆发时将其价值带给战争。您可以使用Gradle的资源过滤支持来做到这一点。application.properties像这样配置您的:
spring.profiles.active
application.properties
spring.profiles.active=@activeProfiles@
然后在您的应用过滤build.gradle以替换@activeProfiles@为属性的值:
build.gradle
@activeProfiles@
processResources { filter org.apache.tools.ant.filters.ReplaceTokens, tokens: [ activeProfiles: activeProfiles ] }
在此示例中,我使用了名为的属性activeProfiles。然后,您必须在运行构建时提供一个值:
activeProfiles
./gradlew -PactiveProfiles=foo build