Spring 具有嵌入式 Tomcat 和多个环境的引导项目

Spring boot project with embedded Tomcat & multiple environments

我有一个 Spring 启动(带有嵌入式 tomcat 8)项目,其中包含部署在多个环境中的多个服务器组件(dev/test/prod)你如何制作一个 jar可以以这样的方式部署到多个环境中,即在每个环境中,jar 将获取适当的环境参数,例如每个环境应该使用的 db 和其他服务器 url。 objective 不会触及使 QA 过程无效的 jar 文件。如果是传统部署,我通常会更改属性文件中的标志以指示 env,并根据该参数读取其余属性。

您将 jar(或 war)打包为 mvn package,然后执行添加一个 -D.spring.profiles.active 参数来设置您的环境:类似于:mvn spring-boot:run -Dspring.profiles.active=dev

检查this and this 文档。