我正在尝试将 pom.xml 中的属性加载到 application.properties 中。我想创建两个配置文件:dev 和 prod 以使用不同的数据库 url。我使用 Jenkins 作为 CI,在我的所有应用程序(主要是 Spring MVC,没有 Boot 项目)中都使用 maven 配置文件部署到 Tomcat。使用 maven 属性可以做到这一点吗?我试过这样的东西: spring.datasource.url=${jdbc.url}
原文由 Jakub Pomykała 发布,翻译遵循 CC BY-SA 4.0 许可协议
在执行此操作之前,请考虑将属性文件从可部署包中外部化。这样,您可以在每个环境中部署相同的编译。它将为您的 Jenkins 节省一些实际上不必要的工作。最佳实践是只构建您的应用程序一次,但是,如果您不相信,这里是如何做到的。
现在,改为
${property.key}
你应该使用@property.key@
。在这种情况下,您的 application.properties 必须包含以下示例才能按预期工作:您还可以查看有关 为不同的 Maven 配置文件分离 Spring 属性文件 的帖子。这样您就可以将 pom.xml 中的值外部化。