我不确定我是否完全理解这个问题,但我将尝试通过提供有关 Spring Boot 中配置文件的一些详细信息来回答。
为您#1例如,根据文档,您可以使用以下命令选择配置文件Spring Boot Maven 插件 using -Drun.profiles
.
Edit:适用于 Spring Boot 2.0+run
已更名为spring-boot.run
and run.profiles
已更名为spring-boot.run.profiles
mvn spring-boot:run -Dspring-boot.run.profiles=dev
更多详情请查看:Spring Boot Maven 插件 https://docs.spring.io/spring-boot/docs/2.0.1.RELEASE/maven-plugin/examples/run-profiles.html
从你的#2例如,您在 jar 名称之后定义活动配置文件。您需要在正在运行的 jar 名称之前提供 JVM 参数。
java -jar -Dspring.profiles.active=dev XXX.jar
基本信息:
你提到你有一个application.yml
and a application-dev.yml
。运行与dev
配置文件将实际加载both配置文件。值来自application-dev.yml
将覆盖由提供的相同值application.yml
但两者的价值yml
文件将被加载。
还有多种方法来定义活动配置文件。
您可以像以前一样定义它们,使用-Dspring.profiles.active
当运行你的罐子时。您还可以使用SPRING_PROFILES_ACTIVE
环境变量或spring.profiles.active
系统属性。
更多信息可以在这里找到:2.6.设置活动弹簧配置文件 https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto-set-active-spring-profiles