springboot加载外部jar的项目实践
更新时间:2026年02月10日 09:59:08 作者:wsaaaqqq
本文主要介绍了springboot加载外部jar的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
1. 以现有项目jar:xxx.jar为例
如根据不同数据库需要更换使用不同的jdbc驱动jar的场景: 把外部驱动jar放到lib-dir1,lib-dir2等目录。
2. 再确定项目jar的类型
- 查看jar的META-INF/MANIFEST.MF文件中的Main-Class(也可以windows下用解压缩工具查看)
unzip -p xxxx.jar META-INF/MANIFEST.MF | grep Main-
- Main-Class类型主要有以下3类
Main-Class: org.springframework.boot.loader.JarLauncher 或者 Main-Class: org.springframework.boot.loader.PropertiesLauncher 或者 Main-Class: x.y.z (x.y.z是示例,以实际为准,只要不是前两个)
3. 修改jar启动方式
若原启动命令为([....]为其他参数部分)
[....] java [....] -jar xxx.jar [....]
修改启动方式为:
- Main-Class: org.springframework.boot.loader.JarLauncher
[....] java [....] -Dloader.path="lib-dir1,lib-dir2" -cp "xxx.jar" org.springframework.boot.loader.PropertiesLauncher [....]
- Main-Class: org.springframework.boot.loader.PropertiesLauncher
[....] java [....] -Dloader.path="lib-dir1,dir2" -jar xxx.jar [....] 或者 [....] java [....] -Dloader.path="lib-dir1,dir2" -cp "xxx.jar" org.springframework.boot.loader.PropertiesLauncher [....]
- Main-Class: x.y.z (x.y.z是示例,以实际为准,只要不是前两个)
多个外置目录用“:”(英文冒号) [....] java [....] -cp "xxx.jar:lib-dir1/*:lib-dir2/*" x.y.z [....]
知识点
- java 参数
java -cp “xxx.jar:lib1/*:lib2/*” x.y.z -cp: 指定java运行加载的类路径,linux下英文冒号分割(windows下英文分号分隔) x.y.z 为启动类
- springboot 默认打包后的启动类 参见:官网

到此这篇关于springboot加载外部jar的项目实践的文章就介绍到这了,更多相关springboot加载外部jar内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
springboot项目部署在linux上运行的两种方式小结
这篇文章主要介绍了springboot项目部署在linux上运行的两种方式小结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-07-07
SpringMVC中的handlerMappings对象用法
这篇文章主要介绍了SpringMVC中的handlerMappings对象用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-09-09
Spring Cloud Stream微服务消息框架原理及实例解析
这篇文章主要介绍了Spring Cloud Stream微服务消息框架原理及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-06-06
Java的Hibernate框架数据库操作中锁的使用和查询类型
这篇文章主要介绍了Java的Hibernate框架数据库操作中锁的使用和查询类型,Hibernate是Java的SSH三大web开发框架之一,需要的朋友可以参考下2016-01-01
Spring security 如何开放 Swagger 访问权限
这篇文章主要介绍了Spring security 如何开放 Swagger 访问权限操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-09-09
Springboot 2.x集成kafka 2.2.0的示例代码
kafka近几年更新非常快,也可以看出kafka在企业中是用的频率越来越高。本文主要为大家介绍了Springboot 2.x集成kafka 2.2.0的示例代码,需要的可以参考一下2022-04-04


最新评论