您好,登錄后才能下訂單哦!
調試源代碼,配置文件加載代碼位置是:
org.springframework.boot.context.config.ConfigFileApplicationListener
public void postProcessEnvironment(ConfigurableEnvironment environment,SpringApplication application)方法
這個方法執行完,enviroment->propertySources從4個,變成6個,最終加載完成
先讀取property,再讀取xml,最后是yml文件
讀取文件的代碼在方法
private void load(String location, String name, Profile profile,DocumentFilterFactory filterFactory, DocumentConsumer consumer)中
462行(spring-boot-2.0.1-RELEASE版)
500行 Resource resource = this.resourceLoader.getResource(location);打斷點調試,看能否讀取配置文件正確路徑
如果配置文件在resources下,location變量應該為classpath:/application.yml
在IDE環境錯誤的情況下,Spring找不到這個文件!!!
可以在調試中通過this.resourceLoader.getResource("classpath:/application.yml").getURI()進行測試,找不到就是IDE有問題或工程有問題。
這種問題比較麻煩,誰知道ide到底出了什么問題?一般工程設置了resources會自動將resources加入classpath,如果實在沒有手動將resources加入classpath就完成了,唯一的問題是用vcs同步開發的時候比較痛苦。
PS:SpringBoot的application.yml沒有生效
SpringBoot的application.yml沒有生效
這里配置了
<packaging>pom</packaging>
造成的,刪除問題解決
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。