springboot启动不加载bootstrap.yml文件的问题

目录

  • springboot启动不加载bootstrap.yml文件
  • 无法识别 bootstrap.yml 小绿叶问题
    • 错误信息
    • 问题定位
    • 解决

springboot启动不加载bootstrap.yml文件 使用nacos做配置中心,但是程序启动失败,没有拉取配置中心的配置信息。
检查之后发现是bootstrap.yml文件没有被加载,在项目的pom.xml文件中添加如下依赖,可能需要添加版本号,具体版本号可以去maven仓库查询,我使用的是 3.0.1版本。
org.springframework.cloudspring-cloud-starter-bootstrap

重新导入依赖,然后重启项目,在项目日志里可以看到下面这一段信息,并且服务正常启动成功,说明服务启动成功。
2021-03-07 22:47:10.953 INFO 54020 --- [ restartedMain] b.c.PropertySourceBootstrapConfiguration : Located property source: [BootstrapPropertySource {name='bootstrapProperties-xxx-xxx-dev.yml,dev'}, BootstrapPropertySource {name='bootstrapProperties-xxx-xxx.yml,dev'}, BootstrapPropertySource {name='bootstrapProperties-xxx-xxx,dev'}]

无法识别 bootstrap.yml 小绿叶问题
错误信息
springboot启动不加载bootstrap.yml文件的问题
文章图片

【springboot启动不加载bootstrap.yml文件的问题】
问题定位
一般单独使用 Spring Boot 时,bootstrap.yml 文件一般是不会生效的,也就是没有 小绿叶 图标;如果使用了 Spring Cloud 组件 bootstrap.yml 才会生效,需要引入 spring-cloud-commons-dependencies 这个包依赖。 另外 bootstrap.yml 的加载顺序优先于 application.yml。

解决
方案一:可以引入 Spring Cloud 中的某一组件即可,如 Eureka 或则 Feign 等,因为里面包含 spring-cloud-commons-dependencies 依赖。
org.springframework.cloudspring-cloud-starter-netflix-eureka-client

方案二:单独引入 spring-cloud-commons-dependencies 依赖
org.springframework.cloudspring-cloud-commons-dependencies${spring-cloud-commons.version}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    推荐阅读