关注我的公众号:【编程朝花夕拾】,可获取首发内容。

01 引言
接上一期,打包好的Jar
包,启动时,如何加载外部配置文件呢?
技术上,在使用别人开源的工具时,开源工具都会将配置文件暴露在外面,提供给使用者修改配置。
下来我们一起了解一下:如何精准指定配置文件,让部署更方便呢?
02 实战方法详解
插件开发好后,会打成jar
包:jdbc-loadbalance-1.0.0.jar
上面的jar
包就类似的开源的工具类。现在要做就是如何让运维能够根据自己的情况,修改配置文件中数据库的链接。下面来介绍常用的两种方法。
2.1 命令行直接指定
bash
java -jar jdbc-loadbalance-1.0.0.jar \
--spring.config.name=myconfig \ # 指定配置文件名(无需扩展名)
--spring.config.location=classpath:/config/,file:/opt/config/
✅ 优势 :优先级最高,实时生效 ⚠️ 注意 :路径支持classpath:
、file:
和URL
格式
2.2 通过-D
参数传递系统属性
bash
java -Dspring.config.location=file:/etc/app/conf/ \
-jar jdbc-loadbalance-1.0.0.jar.jar
✅ 适用场景:与CI/CD工具(Jenkins、GitLab CI)集成
2.3 命令的优先级
- 命令行参数(
--key=value
) - JVM系统属性(
-Dspring.config.location
) - Jar包内部的默认配置
03 落地方案
上面讲述两种都可实现,我这里选择的就是第一种方式。
先看下我的目录结构:

Jar
包和配置文件放在同级目录下面。
start.bat
:用户Windows环境
bash
java -jar jdbc-loadbalance-1.0.0.jar --spring.config.location=application.properties
start.sh
:用于Linux环境
bash
#!/bin/bash
nohup java -jar jdbc-loadbalance-1.0.0.jar --spring.config.location=application.properties >loadbalance.log 2>&1 &
echo '>>>>>>>>>>jdbc-loadbalance started'
echo '>>>>>>>>>>查看端口或者loadbalance.log日志,确定启动成功后,访问:localhost:8080/index.html'
readme.txt
:说明运行的环境以及注意事项

04 小结
Jar
包加载外部配置文件,你学会了么?赶紧去开发属于自己的小插件吧