当前位置:网站首页>解决多版本jar包冲突问题
解决多版本jar包冲突问题
2022-08-02 17:19:00 【花开不识君】
解决多版本jar包冲突问题
在和三方对接的过程中,我们可能会不断引入一些三方jar包,但这个时候就有可能出现一个项目需要依赖两个版本不同且功能不兼容的jar包,本文记录一种方法解决方法。
修改jar全限定名
我们知道jvm加载类是通过判断类的全限定名来判断当前类是否被加载,这个导致多版本jar包不兼容的原因,那么我们就从里下手。
例子
我们需要将 bcprov-jdk15on-1.65.jar 由原本的org.bouncycastle 替换为shade.bouncycastle
1、准备两个文件
1、jarjar.jar
<!--自行把jar下载下来-->
<dependency>
<groupId>com.googlecode.jarjar</groupId>
<artifactId>jarjar</artifactId>
<version>1.3</version>
</dependency>
2、rule.txt
rule org.bouncycastle.** [email protected]
2、放到一个文件下(联同要修改的jar包)
4、运行jarjar
java -jar jarjar-1.3.jar process rule.txt bcprov-jdk15on-1.65.jar shade-bcprov-jdk15on-1.65.jar
5、大公告成!
边栏推荐
猜你喜欢
navicat premium 15 下载安装详细教程
融云「 IM 进阶实战高手课」系列直播上线
Continuous integration (4) Jenkins configuration alarm mechanism
Gartner发布,年度Challenger!
默认参数的代码实现及日期的注入与显示
新特性解读 | MySQL 8.0 GIPK 不可见主键
Flink学习9:配置idea开发flink-Scala程序环境
二舅“反转”了?
navicat creates a connection 2002-can't connect to server on localhost (10061) and the mysql service has started the problem
Kubernetes:(六)Pod重启策略和状态解释
随机推荐
NeRF:火爆科研圈的三维重建技术大揭秘
默认参数的代码实现及日期的注入与显示
蔚来杯2022牛客暑期多校训练营5 ABCDFGHK
Mysql——分组统计
MYSQL一站式学习,看完即学完
golang源码分析(4):select
Mysql开启binlog
2022安全员-C证考试题库模拟考试平台操作
字节面试官狂问我:你没有高并发、性能调优经验,为什么录取你?
小程序毕设作品之微信体育馆预约小程序毕业设计成品(7)中期检查报告
Redis的使用--集群模式
MySQL表的约束
德国客户对文档管理系统、工作流自动化软件 DocuWare 的评价
Wechat Gymnasium Appointment Mini Program Graduation Design Finished Work (5) Task Book
Navicat premium download and install 15 detailed tutorial
一文搞懂│php 中的 DI 依赖注入
Nacos的基本配置
Mysql——字符串函数
Oracle分析归档日志内容时,发现很多null?
golang源码分析(5):sync.Once