java 怎么把jar 文件反编译

java 怎么把jar 文件反编译,第1张

这个很简单,把jar包塌裂碃孩百绞知悸版溪保娄反编译这个你应该知道了,很多工具jd gui就是不错的一个,然后,你用Eclipse等工具把你反编译的文本贴到java文件中。

这时肯定有编译错误,你可以把你软件中的jar包都引为classpath下。

编译通过后,就可以去取.class文件了再放回坦衫手jar包中原有的目录

全部搞定。

~如果你认可我的回答,请及时点击【采纳为满意回答】按钮

~~手机提问的朋友在客户端右上角评价点【满意】即可。

~你的采纳是我前进的动力

~~O(∩_∩)O,记得好评和采纳,互相帮助让嫌,谢谢。

*** 作方法如下:

1)首先使用jar命令将jar文件解压缩到classes目录(假设已经设置好了CLASSPATH等,渣嫌旅jar.exe是放在jdk的bin目录下的)

CMD>jar -xvf test.jar -C classes

2)然后使用jad命令对上面产生的classes目录进行反编译

CMD>[jad_home]/jad.exe -r -ff -d src -s Java classes/**/*.class

含义如下:

其中-r 表示恢复源文件者缺的目录结构,,-ff 表示将类属性定义放在类方法定义之前, -d 表示输出目录,如凳-s 表示文件的扩展名。

所有的java文件将会被放置到src目录下。

有些时候我们面对一个class文件jar包或者war包,很想知道里面有什么参数,有什么方法,但是又没有文档,又没有源代码,那怎么办呢。

没关系,我们可以反编译这些class文件或jar包或war包。

java的class文件存储的是字节码,这些基本知识在此就不必啰嗦了。反正就是其存储的信息足够可以反编译出来。

我们下载TTools中dist文件夹下的TdeCompile.jar可执信粗行jar包,然后就可以开始反编译工作了。使用方法很简单,在命令行输入命令即可,如下

[plain] view plain copy

java -jar TdeCompile.jar xxx.class

注意如果你不在TdeCompile的同目录下,需要写上TdeCompile.jar的路径,其次跟一个参数xxx.class,xxx代表你所要反编译的文件的文件名。输出即是xxx.class.txt,它是反编译过后的文件,txt文本格式,所在目录通xxx.class。请确保你在xxx.class目录下有写权限。

我们也可以直接 *** 作一个jar包或war包。如:

[plain] view plain copy

java -jar TdeCompile.jar xxx.jar

程序可以自动识别是class文件还是jar或war包,如果是jar包核坦裤或war包,则首先自动解压缩,解压缩的目录为xxx.jar的同一个目录,然后逐个反编译class文件,在每个class文件的旁边输出一个xxx.class.txt文件。请确保你在jar包所在目录有写权限。

TdeCompile的原理是改简利用了ASM去读取每一个class文件的信息。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8216858.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存