springboot读取不到默认配置文件application.yaml
·
springboot 读取不到默认配置文件application.yaml
一、
先分析下springboot读取配置文件的原理,源码在org.springframework.boot.context.config.ConfigFileApplicationListener.class的load(ConfigFileApplicationListener.Profile profile, ConfigFileApplicationListener.DocumentFilterFactory filterFactory, ConfigFileApplicationListener.DocumentConsumer consumer)方法里,
我们可以看到加载默认配置文件名称由三个部分组成:
- 前缀:
classpath:/或classpath:/config/或file:./或file:./config/或file:./config/*/ - 后缀:
properties,xml,yml,yaml - 中间文件名: application或者application-(这种需要在pom文件配置properties)或者bootstrap或者bootstrap-(同上)
三个部分自由组合得到一个文件名,逐一遍历加载一遍,由此看到默认加载路径可以是/src/main/resources下的/,/config,/*/config
二、常见错误,
1. 把配置文件放在/src/main/resources下的conf文件夹
2. 配置POM文件的<build>的<resources>时,习惯性把targetPath配成/conf
3. 配置了支持多环境(application-dev.yaml,application-sit.yaml,application-prod.yaml)的profiles,而没有配build的resources
三、记录下加载数据库的源码
- 数据库的自动配置:
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration.class - 数据库的配置:
org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.class
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)