在bootstrap.yml中设置活动配置文件不会影响application.yml的评估。这是一个错误,还是我不认识的功能?

时间:2017-11-28 16:08:30

标签: java spring spring-boot

当我在spring.profiles.active=DEV中添加bootstrap.yml时,这对于引导程序处理得很好。即将从引导程序属性加载DEV配置文件。但是,在处理application.yml时,它不起作用。

从单步执行代码,这似乎是由于有关激活的配置文件的信息没有被推得足够高(仅StandardEnvironment,这似乎是ConfigFileApplicationListener的本地。在评估application.yml时,将再次根据原始信息创建环境,并且不会读取配置文件。

不幸的是我无法找到任何相关文档。文档始终指的是在application.properties中设置此属性。现在我很好奇这是否是该功能的(预期)部分可能需要一些文档刷新,或者更确切地说是一个应该修复的错误?

2 个答案:

答案 0 :(得分:0)

仅供参考,这似乎是由错误触发的。

至少在Spring boot 2.0.3中,可以在bootstrap.yml中定义活动配置文件并激活application.yml中定义的配置文件

在yml配置中,请确保活动配置文件周围没有双引号,否则不会正确处理。

答案 1 :(得分:0)

与Spring Cloud结合使用时,可以在bootstrap.yml中设置活动配置文件。

将此添加到您pom.xml:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-context</artifactId>
    <version>1.2.4.RELEASE</version>
</dependency>