解决poi版本冲突

本文介绍了如何处理 poi 版本冲突问题,通过重新打包 poi,修改 easyExcel 源码中的 poi 依赖,并进行全局 import 替换,最后成功在项目中同时使用不同版本的 poi,确保 easyExcel 功能正常运行。
摘要由CSDN通过智能技术生成


背景

由于业务需要,引入easyExcel。easyExcel最低依赖版本是3.17,系统中已经存在3.16版本,排除依赖有些类无法找到,导致jar包冲突无法共存。寻求解决方案时,实践可通过修改jar包路径达到目的。在此对过程做一下记录。

参考文章

资源下载:
jarjar下载地址
easyExcel仓库
打包下载


一、重新打包poi

1.准备好需要的资源

poi及jarjar

2.创建rule.txt

rule.txt

3.rule.txt中写入文本

rule org.apache.poi.**  com.customize.poi.@1

3.验证能否修改包名

3.17可以忽略,实践通过,详细用法可自行研究

java -jar jarjar-1.3.jar strings  poi-3.17.jar

在这里插入图片描述

4.重新打包

自行修改规则

java -jar jarjar-1.3.jar process rule.txt poi-3.17.jar customize-poi-3.17.jar
java -jar jarjar-1.3.jar process rule.txt poi-ooxml-3.17.jar customize-poi-ooxml-3.17.jar
java -jar jarjar-1.3.jar process rule.txt poi-ooxml-schemas-3.17.jar customize-poi-schemas-3.17.jar

生成新的jar包
新生成的jar包

5.打包到本地仓库

mvn install:install-file -Dfile=customize-poi-3.17.jar -DgroupId=com.customize -DartifactId=poi -Dversion=3.17 -Dpackaging=jar

mvn install:install-file -Dfile=customize-poi-ooxml-3.17.jar -DgroupId=com.customize -DartifactId=poi-ooxml -Dversion=3.17 -Dpackaging=jar

mvn install:install-file -Dfile=customize-poi-schemas-3.17.jar -DgroupId=com.customize -DartifactId=poi-ooxml-schemas -Dversion=3.17 -Dpackaging=jar

打包后
打包到本地仓库

二、重新编译easyExcel

1.下载easyExcel源码

注意easyExcel版本,导入IDE(笔者使用IDEA)
在这里插入图片描述
或者

git clone https://github.com/alibaba/easyexcel.git
git checkout -b dev2.2.6 v2.2.6

2.修改pom文件中poi依赖

<dependency>
   <groupId>com.customize</groupId>
   
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值