tomcat7-maven-plugin 部署 spring 引导并选择适当的 spring 配置文件

tomcat7-maven-plugin to deploy spring boot with appropriate spring profile selected

我的目标是能够使用 tomcat-maven 插件从命令行部署我的 spring 引导应用程序,其中提供的参数告诉 spring 哪个配置文件像这样使用:

mvn tomcat7:deploy -Dspring.profiles.active="dev"

我已经尝试了几种不同的方法,例如 中描述的解决方案,但仍然始终选择默认的 application.properties。

我能够选择应用程序 dev.properties 的唯一方法是使用

mvn spring-boot:run -Dspring.profiles.active="dev"

但我们不想将 tomcat 打包到我们的 war

我是 maven 和 spring 引导的新手,现在一天的大部分时间我都在转动我的轮子,所以任何建议都将不胜感激。

考虑使用 MAVEN_OPTS 环境变量来设置 VM 参数。 (Linux/osx) 您需要在 Maven 目标之前执行的示例:

export MAVEN_OPTS="-Dspring.profiles.active=dev"

我发现了问题,并且能够使用以下方法选择正确的配置文件 export SPRING_PROFILES_ACTIVE=dev。我遇到的问题是当我通过 eclipse UI 启动本地 tomcat 服务器时,我的环境变量被忽略了。当从 tomcat 开始到 startup.bat 时,环境变量被使用并且 spring 使用正确的配置文件。