Spring Boot 2.4版本开始,配置文件加载方式进行了重构,只会识别application.* 配置文件,并不会自动识别bootstrap.yml;
因此如果springboot工程引入的是2.4以上的版本,则在resource下配置文件为application.yml
如果写入bootstrap.yml则不生效,显示为如下:
解决方案:
方案一:spring-boot-starter-parent依赖降级,降到2.4以下版本;
方案二:resource下写application.yml,不写bootstrap.yml
方案三:在pom.xml中引入如下依赖,并在启动类上添加注解@EnableDiscoveryClient
org.springframework.cloud spring-cloud-starter-bootstrap
优先级问题:
对于常说的bootstrap.yml优先级高于application.yml,这种是基于springcloud项目的基础上,因SpringCloud是基于SpringBoot构建的,所有SpringCloud项目两种文件都会识别,这个时候才有优先级的说法;