在Spring Boot中从命令行设置活动配置文件和配置位置
我有一个Spring Boot" title="Spring Boot">Spring Boot应用程序。
我的应用程序中有三个配置文件-> 开发,暂存和生产。所以我有3个档案
- 应用程序开发
- application-staging.yml
- application-production.yml
我的application.yml驻留在内部src/main/resources
。我在application.yml中将活动配置文件设置为:
spring: profiles.active: development
其他3个配置文件特定的配置文件位于C:\config
文件夹中。
我正在使用gradle插件进行蚀。当我尝试执行“ bootRun ”时,我在eclipse的gradle配置中将命令行参数设置为
-Dspring.profiles.active=staging -Dspring.config.location=C:\Config
但是,命令行属性未得到反映,并且我的活动配置文件始终被设置为development(这是我在applications.yml文件中提到的内容)。此外,不会在C:\ Config文件夹中搜索特定于配置文件的配置文件。
我想我在这里错过了一些东西。在过去的两天里,我一直在努力解决问题。但是没有运气。我真的很感谢您的帮助。
回答:
你可以通过两种方法在命令行上添加/覆盖spring属性。
选项1:Java系统属性(VM参数)
重要的是-D参数应位于application.jar之前,否则无法识别。
java -jar -Dspring.profiles.active=prod application.jar
选项2:程序参数
java -jar application.jar --spring.profiles.active=prod --spring.config.location=c:\config
以上是 在Spring Boot中从命令行设置活动配置文件和配置位置 的全部内容, 来源链接: utcz.com/qa/420548.html