springboot项目启动报错无法识别bootstrap.yml配置问题
问题
自己搭建的springboot项目启动报错,找不到相关配置信息,明明配置在bootstrap.yml中,以前一直用的application.yml,想着application.yml优先级没有bootstrap.yml高,bootstrap配置文件肯定没问题,结果项目就是死活起不起来。
原因
SpringBoot项目,只会识别application.* 配置文件,并不会自动识别bootstrap.yml。 bootstrap.yml配置是SpringCloud项目才会用到的,如果你想在springboot项目中用bootstrap.yml,那么你需要添加bootstrap启动器。
添加bootstrap启动器
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency>
优先级问题
由于SpringCloud是基于SpringBoot构建的,所有SpringCloud项目两种文件都会识别,这个时候才有优先级的说法,SpringCloud项目是会优先读取bootstrap配置在读取application配置。 SpringCloud应用是基于bootstrap的上下文运行的。