首页 > 解决方案 > 自 Spring Boot 2 以来 spring.cloud.bootstrap.location 的不同行为

问题描述

spring.cloud.bootstrap.location我注意到自 Spring Boot 2.x 以来该属性的不同行为

Spring Boot 1.x 中的行为:

Spring Boot 2.x 中的行为:

原因是自 Spring Boot 2 以来, 的行为spring.config.location configuration已得到修复,并且该属性spring.cloud.bootstrap.location现在也可以按需要工作。

请参阅https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Migration-Guide#configuration-location

我还通过将默认搜索位置添加到属性来恢复原始行为spring.cloud.bootstrap.location=classpath:/,classpath:/config/,file:./,file:./config/,file:/my/special/search/location

还应该引入一个新的属性spring.cloud.bootstrap.additional-locationspring.config.additional-location

提示:这是 BootstrapApplicationListener 当前的工作方式:

https://github.com/spring-cloud/spring-cloud-commons/blob/57c2f9a154f3d4146135529261f071a00ab47ea9/spring-cloud-context/src/main/java/org/springframework/cloud/bootstrap/BootstrapApplicationListener.java#L145-L156

标签: spring-bootspring-cloud

解决方案


推荐阅读