在执行此操作之前,请考虑将属性文件从可部署包中外部化。这样,您可以在每个环境上部署相同的编译。它将为您的詹金斯节省一些实际上不必要的工作。最佳实践是只构建一次应用程序,但是,如果您不相信,请按以下步骤操作。
- 在 pom.xml中 ,为属性定义具有适当值的配置文件。
<profile><id>dev</id><properties> <jdbc.url>your_dev_URL</jdbc.url></properties></profile>
- 设置Maven资源插件以过滤包含 application.properties 文件的目录。
<build><resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource></resources>...</build>
- 如果使用Spring Boot 1.3或更高版本,则应注意以下事实:为避免Spring Boot占位符与Maven资源插件过滤的令牌之间的冲突,框架引入了一种解决方案,该解决方案要求对过滤后的值使用不同的语法。
现在,
${property.key}您应该使用@property.key@。在这种情况下,您的 application.properties
必须包含以下示例才能按预期工作:
spring.datasource.url=@jdbc.url@
您还可以查看有关为不同的Maven配置文件分离Spring属性文件的文章。这样,您将外部化pom.xml中的值。



