java-jar启动SpringBoot项目时配置文件加载位置与优先级
- 开源代码
- 2025-08-04 19:12:02

服务部署启动时,我们经常需要指定配置文件启动.
一般有四种,优先级如下
spring.config.location > spring.profiles.active > spring.config.additional-location > 默认的 application.yml
1.spring.config.location 外部配置文件优先级最高
一般配置文件在服务器上面,而不是读取jar包里面的配置文件,
比如
nohup java --spring.config.location=/data/application-test.yml -jar logaudit-api-provider.jar > /dev/null 2>&1 &这个时候就会去优先读取/data/目录下的application-test.yml文件,而不是项目jar包里面的application-test.yml
2.spring.profiles.active 指定读取jar包里面的哪个配置文件
nohup java --spring.profiles.active=test -jar logaudit-api-provider.jar > /dev/null 2>&1 &这个时候会去读取jar包里面的application-test.yml
3.spring.config.additional-location 指定配置文件夹路径
这个我没有用过,一般是用的上面两个或者下面第四个默认
nohup java --spring.config.additional-location=/data/ -jar logaudit-api-provider.jar > /dev/null 2>&1 &这个时候会去扫描服务器/data/目录下面的文件作为配置文件,如果有data下面有多个配置文件呢,比如同时有application-test.yml和application-pro.yml.那么会读取哪个?
如果data目录下只有application-test.yml.那应该和第一种是一样的作用
比较懒,就没有去尝试了
4.默认的application.yml 读取代码指定的配置文件
nohup java -jar logaudit-api-provider.jar > /dev/null 2>&1 &没有指定的时候,那么就会去读取jar包里面的application.yml,它自己指定了哪个就读取哪个,以代码配置为准
java-jar启动SpringBoot项目时配置文件加载位置与优先级由讯客互联开源代码栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“java-jar启动SpringBoot项目时配置文件加载位置与优先级”
上一篇
Leetcode377组合总和Ⅳ
下一篇
C#基础-线程暂停方案之重置事件