有时候从网上下的java demo中,有的是发布后的环境,所以只有jar包信息,没有对应的源码,我们要把其中的信息修改下,所以就需要我们本文中提到的直接修改java class信息。参考网上资料好,赶紧写下来,以防自己忘记了,也同时和大家互相学习进步下!
如果jar间相互依赖关系不多的话,可以使用jd-gui工具将jar包中内容还原重现到eclipse中项目,这样就能很容易的想怎么修改就修改,最后再export成jar就可以了。有个兄弟用
但往往,jar包间对应的依赖关系很多,有时候好几十个jar包,捣鼓半天都无法通过编译,这就需要用下边的工具了---jbe
打开后,显示的是jvm指令集,在这里可以修改相应的代码,如果不知道某方法中具体那句代码怎么写,可以自己在eclipse中编写一个同样的方法,用jbe打开,copy过来就可以直接用了。
最后就是打包的问题了,把原jar用winrar解压缩后,对其中的class进行修改后,再用winrar的方式压缩,然后改后缀名.rar为.jar。很可惜,这样的方式是行不通的,放在项目中有时候无法进行。
打jar包要用到以下命令,在console控制台中:
jar cvf filename.jar foldername
举例说明:
1 原jar名为stand.jar
2 解压缩后放在c:\test目录下
3 其中目录为org/apache/ 下有A.class,B.class
利用jbe修改好A.class
4将org整个文件夹拷到c:\test下
5 这样就实施最后一步:
在console中输入:
这样就生成jar包了!
同时还可以利用jclasslib来修改class,详细的参看这位网友兄的帖子:
http://blog.csdn.net/hexin373/article/details/6669813
写的非常详细,赞一个!