jarjar.jar解决jar包版本兼容问题
最近在做一個(gè)給excel添加水印的需求,需要用到新版poi,但是老版本的poi不能丟棄,因?yàn)閣ord轉(zhuǎn)html的功能是基于老版的poi的,因此只能對更改新版本poi的的package,筆者使用的是通過jarjar.jar實(shí)現(xiàn)的方式,不嫌麻煩的童學(xué)可以下載poi的源碼jar包,解壓后通過idea修改package再通過java -jar命令重新打包。
以下是筆者fastjson-1.2.38.jar與poi-3.14.jar的修改過程
編寫rule.txt(替換規(guī)則)
rule com.alibaba.fastjson.** fk.alibaba.fastjson.@1
目錄結(jié)構(gòu)如下:
在當(dāng)前目錄下開啟cmd,輸入如下命令:
如果沒有報(bào)錯(cuò)就說明是ok了,報(bào)錯(cuò)的話可以檢查下java環(huán)境變量是否配置好了。
通過winrar打開生成的fkfastjson-1.2.38.jar,
可以看到已經(jīng)成功了。
筆者在對poi-4.1.0.jar進(jìn)行類似操作的時(shí)候發(fā)現(xiàn)并不成功,而是另外生成了一個(gè)文件夾,新文件夾里面并沒有對應(yīng)的所有class文件,對3.*版本的poi又是成功的,猜測是poi版本或者是jarjar版本的問題,要是有小伙伴知道原因的話,歡迎下方評論。
附j(luò)arjar.jar資源下載:https://download.csdn.net/download/qq_41633199/12185203
總結(jié)
以上是生活随笔為你收集整理的jarjar.jar解决jar包版本兼容问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql limit耗时过长
- 下一篇: 第三方分享接口api