最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot加載不出來(lái)application.yml文件的解決方法

 更新時(shí)間:2023年12月18日 10:40:03   作者:方丈的寺院  
這篇文章主要介紹了SpringBoot加載不出來(lái)application.yml文件的解決方法,文中通過(guò)示例代碼講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作有一定的幫助,需要的朋友跟著小編來(lái)一起來(lái)學(xué)習(xí)吧

摘要

記錄一次SpringBoot加載不出來(lái)application.yml文件的問(wèn)題解決過(guò)程

問(wèn)題

配置了application.yml文件,但是映射到properties bean的時(shí)候失敗

@ConfigurationProperties(
    prefix = "com.fs"
)
public class DemoProperties {
    private String serviceName;

    public DemoProperties() {
    }

    public String getServiceName() {
        return this.serviceName;
    }

    public void setServiceName(String serviceName) {
        this.serviceName = serviceName;
    }
}

問(wèn)題分析

分析1:首先懷疑是application.yml文件沒(méi)有打包到classpath下,這個(gè)是最直接的原因,使用的是maven 構(gòu)建工具

在target 目錄下面生成的war中看到了這個(gè)文件,排除了這個(gè)原因

分析2: DemoProperties文件配置不對(duì)

檢查發(fā)現(xiàn),@ConfigurationProperties 注解有,setter,getter方法有。不放心debug了一下

發(fā)現(xiàn)propertySource中沒(méi)有application.yml文件的值,一個(gè)正常的application.yml文件加載情況應(yīng)該是這樣的

分析3:

這時(shí)候根據(jù)常識(shí)已經(jīng)找不出問(wèn)題了,只能看源碼了

根據(jù)時(shí)序圖可以大致猜測(cè)問(wèn)題發(fā)生在load階段,即加載properties文件階段。PropertySourceLoader接口中l(wèi)oad方法實(shí)際讀取properties文件。這個(gè)接口有兩個(gè)實(shí)現(xiàn)PropertiesPropertySourceLoader,解析后綴名為"properties", “xml"的application配置文件YamlPropertySourceLoader解析后綴名為"yml”, "yaml"的application配置文件

看下YamlPropertySourceLoader的實(shí)現(xiàn)

 public PropertySource<?> load(String name, Resource resource, String profile) throws IOException {
        if(ClassUtils.isPresent("org.yaml.snakeyaml.Yaml", (ClassLoader)null)) {
            YamlPropertySourceLoader.Processor processor = new YamlPropertySourceLoader.Processor(resource, profile);
            Map<String, Object> source = processor.process();
            if(!source.isEmpty()) {
                return new MapPropertySource(name, source);
            }
        }

        return null;
    }

我的天,一眼看出來(lái)可能會(huì)有問(wèn)題,判斷org.yaml.snakeyaml.Yaml類是否存在,否則返回null

解決

pom文件中加上snakeyaml依賴

			<dependency>
                <groupId>org.yaml</groupId>
                <artifactId>snakeyaml</artifactId>
                <version>${snakeyaml.version}</version>
                 </dependency>

到此這篇關(guān)于SpringBoot加載不出來(lái)application.yml文件的解決方法的文章就介紹到這了,更多相關(guān)SpringBoot加載不出來(lái)application.yml內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java設(shè)計(jì)模式-單例模式實(shí)現(xiàn)方法詳解

    java設(shè)計(jì)模式-單例模式實(shí)現(xiàn)方法詳解

    單例模式,屬于創(chuàng)建類型的一種常用的軟件設(shè)計(jì)模式。通過(guò)單例模式的方法創(chuàng)建的類在當(dāng)前進(jìn)程中只有一個(gè)實(shí)例(根據(jù)需要,也有可能一個(gè)線程中屬于單例
    2021-07-07
  • Java泛型之協(xié)變與逆變及extends與super選擇

    Java泛型之協(xié)變與逆變及extends與super選擇

    這篇文章主要介紹了Java泛型之協(xié)變與逆變及extends與super選擇,文章圍繞主題內(nèi)容展開詳細(xì)內(nèi)容介紹,需要的小伙伴可以參考一下
    2022-05-05
  • Java非法字符: ‘\ufeff‘問(wèn)題及說(shuō)明

    Java非法字符: ‘\ufeff‘問(wèn)題及說(shuō)明

    這篇文章主要介紹了Java非法字符: ‘\ufeff‘問(wèn)題及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Spring?Boot項(xiàng)目獲取resources目錄下文件并返回給前端的方案

    Spring?Boot項(xiàng)目獲取resources目錄下文件并返回給前端的方案

    我們?cè)陧?xiàng)目中經(jīng)常碰到需要讀取固定文件的場(chǎng)景,如模板文件,一般做法是將文件放在resources目錄下,程序通過(guò)多種方式可以順利讀取文件,這篇文章主要給大家介紹了關(guān)于Spring?Boot項(xiàng)目獲取resources目錄下文件并返回給前端的相關(guān)資料,需要的朋友可以參考下
    2024-07-07
  • 淺談Java平臺(tái)無(wú)關(guān)性

    淺談Java平臺(tái)無(wú)關(guān)性

    這篇文章主要介紹了淺談Java平臺(tái)無(wú)關(guān)性,對(duì)此感興趣的同學(xué),可以多了解一下
    2021-04-04
  • java組件fileupload文件上傳demo

    java組件fileupload文件上傳demo

    這篇文章主要為大家詳細(xì)介紹了java組件fileupload文件上傳demo ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Maven Spring jar包啟動(dòng)報(bào)錯(cuò)問(wèn)題解決方案

    Maven Spring jar包啟動(dòng)報(bào)錯(cuò)問(wèn)題解決方案

    maven 編譯jar包,放在linux服務(wù)器啟動(dòng)不起來(lái),提示:xxxx-0.0.1-SNAPSHOT.jar中沒(méi)有主清單屬性,接下來(lái)通過(guò)本文給大家分享問(wèn)題原因及解決方案,感興趣的朋友跟隨小編一起看看吧
    2023-10-10
  • Java 實(shí)用工具類Spring 的 StopWatch常用方法

    Java 實(shí)用工具類Spring 的 StopWatch常用方法

    StopWatch 是 Spring 框架中極其實(shí)用的開發(fā)輔助工具,它為性能分析和調(diào)試提供了輕量但強(qiáng)大的能力,使用簡(jiǎn)單、無(wú)需復(fù)雜配置,本文給大家介紹Java 實(shí)用工具類Spring 的 StopWatch常用方法,感興趣的朋友一起看看吧
    2025-04-04
  • SpringBoot中實(shí)現(xiàn)分布式的Session共享的詳細(xì)教程

    SpringBoot中實(shí)現(xiàn)分布式的Session共享的詳細(xì)教程

    這篇文章主要介紹了SpringBoot中實(shí)現(xiàn)分布式的Session共享,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 對(duì)比Java講解Kotlin中?.與!!.的區(qū)別

    對(duì)比Java講解Kotlin中?.與!!.的區(qū)別

    這篇文章主要給大家介紹了關(guān)于對(duì)比Java,實(shí)例講解Kotlin中?.與!!.的區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用kotlin具有一定參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-06-06

最新評(píng)論

紫阳县| 滨州市| 静乐县| 阿克苏市| 玉门市| 永宁县| 长泰县| 平顺县| 论坛| 启东市| 隆尧县| 绥棱县| 汉中市| 吴江市| 苍南县| 哈尔滨市| 偏关县| 安陆市| 和平县| 读书| 通州区| 嘉兴市| 黄山市| 武胜县| 高台县| 洛南县| 乌兰察布市| 渑池县| 平南县| 大厂| 扎兰屯市| 呼和浩特市| 蒙阴县| 股票| 阳谷县| 苏尼特右旗| 府谷县| 奇台县| 思茅市| 岳阳县| 闸北区|