替换jar包指定的文件

时间:2021-05-19 08:54:03

替换jar 包下面的class 文件,很多人会想到直接用winrar 打开替换,在一般的情况下,

是可行的,但是如果说这个jar 的代码经过混淆后,会有大小写不同,文件名是相同的,在windos下

文件名是不区分大小写的。如果直接用winrar替换的话,你会发现,替换的并非是你想替换的那个文件。

现在有2中可以行的方案:

1 在Linux下把jar包解压,替换,打成jar。这样比较麻烦,这windos还不能用。

2 可以直接用Java jar 工具来替换。

jar uvf test.jar test.class

这样会直接把test.class 直接添加到jar包的根目录。

jar uvf test.jar com/test/test.class 

这样就可以替换相应目录的class文件了。

这里值得注意的是  test.class 必须放在com/test 文件下,要和jar的路径对应起来。不然会说

没有这个文件或目录。jar 包 和 com 文件夹的上级在同一个目录。