怎样替换jar包的指定文件
在做(或修改别人的)项目的时候,可能遇到要修改调用的的jar包内的类属性或方法的问题。在eclipse或是其他的IDE中是无法直接修改的,所以需要一个解压jar-->修改文件-->编译-->打包成jar文件的过程,下面简要的记录下我是如何做的:
1.将工程中的jar文件拷出来,用解压工具解压得到对应的文件;
2.在文件中找到要修改的class文件,将class文件拷出来,用反编译软件反编译一下得到Java文件;(如果包含.java文件就简单了,直接拷贝出.java文件就好了);
3.在eclipse上新建一个工程(工程的目录结构与jar中的一致),再新建一个类文件(类名与要修改的类名一致),把(2)中得到的.java文件的内容拷贝进去
4.这时候可能会报很多错误,因为该类中可能引用了一些其他的包还没有包含进来,根据报错的情况,找到缺少的jar包(原工程中包含这些jar包,可以把原工程的的jar包都拷 过来),拷贝到工程的libs目录下,然后build-path引用到的jar包;
5.这个时候工程不报错了,你可以开始修改该文件了,修改完成之后,按ctr+s保存,就编译完成了,到工程的bin目录下把新生成的.class文件拷出来,替换掉原jar包解压后的文件中要修改的class文件
6.在cd 到解压文件所在目录,通过jar cvf XXX.jar XXX 其中XXX.jar为要打包成的jar文件名 XXX为待打包的文件
打包完成
7.完成之后,就可以当前的目录下找到新生成的jar包了,把它拷贝到原工程中替换掉原来的jar包,这样就大功告成了;