SpringBoot 加载jar外部yml配置文件
https://www.cnblogs.com/saul-zc/p/9719457.html
https://blog.csdn.net/controller_Lw/article/details/114266609
运行Jar包的配置文件可以是内部也可以是外置的配置文件:application.yml ,外置配置文件可以放在服务器上也已可放在远程的git仓库内;
1 、运行命令 —— j a v a − j a r x x x x x x x . j a r \color{red}{ java -jar xxxxxxx.jar} java−jarxxxxxxx.jar
1.1 可以
在
当
前
J
a
r
文
件
目
录
建
c
o
n
f
i
g
同
级
目
录
\color{red}{在当前Jar文件目录 建config同级目录}
在当前Jar文件目录建config同级目录,这个config同级目录放入 application.yml
1.2 也可以
在
当
前
J
a
r
文
件
同
级
目
录
\color{red}{在当前Jar文件同级目录}
在当前Jar文件同级目录 直接放入application.yml
运行命令 —— java -jar xxxxxxx.jar -Dspring.config.location=application-test.yml --spring.profiles.active=test
-Dspring.config.location 指定读取哪个配置文件
-spring.profiles.active 指定读取什么后缀的配置文件
如果启动的时候--spring.profiles.active=test 指定了配置文件后缀,启动的时候 指定的配置文件后缀一致,否则就读取不到要使用的配置文件,导致启动失败。
2、 运行命令 —— j a v a − j a r d e m o . j a r − − s p r i n g . c o n f i g . l o c a t i o n = 路 径 ( a p p l i c a t i o n . y m l ) \color{red}{ java -jar demo.jar --spring.config.location=路径(application.yml)} java−jardemo.jar−−spring.config.location=路径(application.yml)
PS:
如果用命令改变application.yml中某一个属性,修改 –属性=****
如改变端口: java -jar demo.jar –server.port=8686
1、使用本地外置配置文件:
nohup java
-Dspring.config.location=/data/config/application-xxx.yml
-jar system-xxx-v1.0.5.jar
–spring.profiles.active=xxx
> ./logs/xxx.log &
nohup java \
-Dspring.config.location=/data/config/application-sms.yml \
-jar qingyang-sms-v1.0.5.jar \
--spring.profiles.active=case \
> ./logs/case.log &
nohup java \
-Dspring.config.location=/data/qingyang/config/application-case.yml \
-jar select-cases-v0.0.5-11.jar \
--spring.profiles.active=sms \
> ./logs/sms.log &
如果–spring.profiles.active=xxx放在前边保存,放在后边试试,如下:(原因:内置有配置文件,外置添加配置文件,需要后边–spring.profiles.active=xxx 来指定使用那个配置)
2、使用本地配置仓库外置配置文件:
nohup java
-jar xxxxx.jar
–spring.profiles.active=xxx
> ./logs/xxx.log &
nohup java\
-jar select-cases-v0.0.5-13.jar \
--spring.profiles.active=case \
> ./logs/case.log &
3、使用git仓库的外置配置文件:
1、config.server 链接git仓库获取启动配置文件
nohup java \
-XX:MetaspaceSize=128M \
-XX:MaxMetaspaceSize=128M \
-Xms1024m -Xmx1024m \
-Dspring.cloud.nacos.server-addr=127.0.0.1:8848 \
-Dspring.cloud.config.server.git.uri=https://gitee.com/xxxxxx/portal.git \
-Dspring.cloud.config.server.git.username=188000000 \
-Dspring.cloud.config.server.git.password=gir-passsword \
-jar config-server.jar \
> ./logs/config.log &
2、jar包获取启动配置文件
nohup java \
-XX:MetaspaceSize=128M \
-XX:MaxMetaspaceSize=128M \
-Xms1024m -Xmx1024m \
-Dspring.cloud.config.label=prod_qingyang \
-Dspring.cloud.config.profile=qingyang \
-Dspring.cloud.nacos.server \
-addr=127.0.0.1:8848 \
-jar fanyu-flow.jar \
> ./logs/flow.log &
推荐阅读
-
简单了解springboot加载配置文件顺序
-
SpringBoot加载外部依赖过程解析
-
SpringBoot加载子模块配置文件的方法
-
使用Java类加载SpringBoot、SpringCloud配置文件
-
SpringBoot在yml配置文件中配置druid的操作
-
浅谈SpringBoot2.4 配置文件加载机制大变化
-
关于Springboot打成JAR包后读取外部配置文件的问题
-
Springboot打包成jar包和war包,并且可以在外部tomcat下运行访问到
-
Springboot如何获取配置文件application.yml中自定义的变量并使用
-
springboot将application.yml放置编译jar包外