如何使用自定义jvm系统变量来解析application.properties中的应用程序配置位置

时间:2018-10-31 09:01:45

标签: java spring-boot application.properties spring-boot-configuration

我正在使用JVM环境属性进行春季引导,以这种方式解析外部配置文件的位置-

-Dspring.profiles.active=dev -Dspring.config.location=C:\/Documents/resources/configuration/

,在上述位置,我正在维护属性文件,例如: application-dev.properties 这很正常。

但是我想要的是..我想使用自定义的JVM属性来指定相同的东西..然后在应用程序启动时..我将通过解析占位符$ {。来解析实际的配置位置和活动配置文件。 } 这是我的想法..但是不起作用-

-DCUSTOM_ARG_PROFILE_ACTIVE=dev -DCUSTOM_ARG_CONFIG_LOCATION=C:\/Documents/resources/configuration/

,然后在 /src/main/resources/applicaiton.properties 中解析这些属性,如下所示-

spring.profiles.active=${CUSTOM_ARG_PROFILE_ACTIVE}
spring.config.location=${CUSTOM_ARG_CONFIG_LOCATION}

,但是它不起作用。有没有办法(也许正在使用PropertySourcesPlaceholderConfigurer)我可以解析自定义属性值以读取配置文件和配置位置。非常感谢。

0 个答案:

没有答案