Spring Boot Configuration Annotation Processor not found in classpath 三種解決方法

這裏寫圖片描述

@ConfigurationProperties(prefix =“author”)沒有指定classpath時,IDEA提示沒有找到classpath。

在瀏覽器中訪問的結果是null 0是由於在沒有指定路勁的情況下,默認在資源下的applications.properties中查找,如果找到則返回值,如果沒有找到則返回默認值null / 0 / false ...

分析


  1. 出現spring boot配置註解在classpath中沒有找到教授的提示是在用了@ConfigurationProperties這個註解時,所以問題出現在ConfigurationProperties註解。
  2. 根據提示的classpath中找不到,查詢此註解的使用關係怎麼指定classpath,進而查詢location,spring boot1.5以上版本@ConfigurationProperties取消位置註解
  3. 解決方案: 

在配置類中採用@Component的方式註冊爲組件,然後使用@PropertySource來指定自定義的資源目錄(本人測試用@Service代替@Component也可以的)。 
有以下三種解決方案: 
第一種:在資源中創建author.properties,並指明@PropertySource(“author.properties”),即默認在資源下找此文件,找到返回一個值,找不到則報錯,報文件找不到,打不開。

這裏寫圖片描述

第二種:  在資源下創建的配置文件夾,把author.properties放在配置下,訪問方式爲:@PropertySource(“類路徑:配置/ book.properties”)

這裏寫圖片描述

第三種:  直接寫在application.properties中(不建議這麼做,但如果時全局變量提倡這種方法),當寫在此文件中時,不需要指明資源文件路勁,只需要指明前綴即可。如下: 
這裏寫圖片描述

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章