SpringBoot無法識別bootstrap.yml小綠葉問題的解決辦法
錯誤信息

問題定位
一般單獨使用 Spring Boot 時,bootstrap.yml 文件一般是不會生效的,也就是沒有 小綠葉 圖標;如果使用了 Spring Cloud 組件 bootstrap.yml 才會生效,需要引入 spring-cloud-commons-dependencies 這個包依賴。 另外 bootstrap.yml 的加載順序優(yōu)先于 application.yml。
解決
方案一,可以引入 Spring Cloud 中的某一組件即可,如 Eureka 或則 Feign 等,因為里面包含 spring-cloud-commons-dependencies 依賴。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
方案二,單獨引入 spring-cloud-commons-dependencies 依賴
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-commons-dependencies</artifactId>
<version>${spring-cloud-commons.version}</version>
</dependency>
拓展:
springboot讀取不到bootstrap.yml配置項問題
今天在搭建項目的時候,采用springboot 2.4.6版本,然后添加bootstrap.yml配置文件后突然發(fā)現(xiàn)一直讀取不到配置。之前在進行項目依賴漏洞版本的升級時有對其進行簡單了解。
原因剖析
簡單的說就是:由于bootstrap是spring cloud帶來的附加品,所以需要有cloud相關的一些配置才能夠去正常讀取它,否則只會去讀取application.yml。
解決方法
如果springboot版本低于2.4.0版本的話,需要在啟動類對應的pom里添加依賴
<!-- spring cloud,基于spring cloud才會讀取bootstrap.yml -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-context</artifactId>
</dependency>如果springboot版本高于2.4.0版本的話,則在啟動類對應的pom里添加依賴
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>例如我這里用到的是2.4.6版本,那么對應需要加的依賴為:
<!-- spring cloud,基于spring cloud才會讀取bootstrap.yml -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
<version>3.0.3</version>
</dependency>至此,啟動banner和@value("${spring.application.name}")都可以讀取到bootstrap.yml文件中的值。
以上就是SpringBoot無法識別bootstrap.yml小綠葉問題的解決辦法的詳細內(nèi)容,更多關于SpringBoot無法識別bootstrap.yml的資料請關注腳本之家其它相關文章!
相關文章
springboot?web項目中?Set-Cookie?失敗原因及解決辦法
這篇文章主要介紹了springboot?web項目中?Set-Cookie?失敗原因及解決辦法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-10-10
解讀maven項目中Tomcat10與JSTL的問題匯總(Debug親身經(jīng)歷)
這篇文章主要介紹了解讀maven項目中Tomcat10與JSTL的問題匯總(Debug親身經(jīng)歷),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
Springboot四種事件監(jiān)聽的實現(xiàn)方式詳解
這篇文章主要介紹了Springboot四種事件監(jiān)聽的實現(xiàn)方式,事件監(jiān)聽是一種機制,可以定義和觸發(fā)自定義的事件,以及在應用程序中注冊監(jiān)聽器來響應這些事件,需要的朋友可以參考下2022-06-06
基于JPA實體類監(jiān)聽器@EntityListeners注解的使用實例
這篇文章主要介紹了JPA實體類監(jiān)聽器@EntityListeners注解的使用實例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08

