jar包启动配置文件application.property存放位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jar包启动配置文件application.property存放位置相关的知识,希望对你有一定的参考价值。

参考技术A 之前在公司做项目时,看到配置文件都是放在jar包同级目录下的config文件夹下,当时还很纳闷,为什么能读取到,现在想想,我不在学习springboot时就学过这部分吗,结果没反应过来,现在记录下

springboot会按照下列优先级来加载application.property配置文件:优先级由高到低

1、jar包同级目录的config目录下

2、jar包同级目录的application.property

3、classpath下的/config目录

4、classpath下根目录的配置文件

如果不想要这些目录下的配置文件为最高级,我们也可以自己使用如下命令指定配置文件:

java -jar -Dspring.config.location=D:\config\config.properties demo-0.0.1-SNAPSHOT.jar

启动 jar 包时指定 yml 文件

参考技术A

把 application.yml 文件放在执行 java -jar 命令所在的目录中;
执行 java -jar xxx.jar 命令,此时 application.yml 应放在 xxx.jar 同级目录;
执行 java -jar /abc/xxx.jar 命令,此时 application.yml 应放在 / 目录;
需要注意的是,自动加载 application.yml 的位置并不与 jar 包相关,而是与 java 命令有关。

通过 --spring.config.location 参数可以指定配置文件的位置。
java -jar /abc/xxx.jar --spring.config.location=/abc/application.yml

以上是关于jar包启动配置文件application.property存放位置的主要内容,如果未能解决你的问题,请参考以下文章

springboot的jar包启动时指定加载的配置文件

启动 jar 包时指定 yml 文件

springboot打jar包部署外置配置文件

Spring Boot Jar 包启动时如何加载外部资源

Spring Boot Jar 包启动时如何加载外部资源

自定义jar配置文件问题?