欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

jad反转换文件

发布时间:2024/8/1 58 豆豆
生活随笔 收集整理的这篇文章主要介绍了 jad反转换文件 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Jad(JAva Decompiler)是一个Java的反编译器,可以通过命令行把Java的class文件反编译成源代码。
使用方法:
1.将下载的jad.exe复制放入jdk的bin文件夹中!

2.找出一个java文件,我本次使用的文件是HelloWord.java,并将文件放在D盘java文件夹中

3.打开cmd,先找到文件所在处,并输入jad -sjava HelloWord.class,打开文件夹即发现多出一个HelloWord.java文件

知识补充:

首先,看一下jad的帮助提示

-a - 用JVM字节格式来注解输出
-af - 同 -a,但是注解的时候用全名称
-clear - 清除所有的前缀
-b - 输出多于的括号 (e.g., if(a) { b(); }, default: no)
-d

- 指定输出文件的文件目录
-dead -试图反编译代码的dead 部分(default: no)
-disass - 不用用字节码的方式反编译 (no JAVA source generated)
-f - 输出整个的名字,无论是类还是方法
-ff -输出类的成员在方法之前 (default: after methods)
-i - 输出所有的变量的缺省的最初值
-l - 将strings分割成指定数目的块的字符 (default: no)
-lnc - 将输出文件用行号来注解 (default: no)
-nl - 分割strings用新行字符 newline character (default: no)
-nodos -不要去检查class文件是否以dos方式写 (CR before NL, default: check)
-nocast - 不要生成辅助文件
-nocode -不要生成方法的源代码
-noconv - 不要转换java的定义符 (default: do)
-noctor - 不允许空的构造器存在
-noinner -关掉对内部类的支持 (default: turn on)
-nolvt - 忽略局部变量的表信息
-nonlb - 不要输出一个新行在打开一个括号之前 (default: do)
-o - 无需确认直接覆盖输出 (default: no)
-p - 发送反编译代码到标准输出 STDOUT (e.g., for piping)

其次.常用命令

jad -o -r -sjava -dsrc test.class

tree目录下的所有*.class文件
jad -o -r -sjava -dsrc tree/**/*.class

unix可以表示为:jad -o -r -sjava -dsrc ‘tree/**/*.class’

指定输出文件的名字的话,用以下的转移命令

jad -p example1.class > myexm1.java

输出带字节码注释和源码的(最常用)

jad -o -a Test.class > ss.java

总结

以上是生活随笔为你收集整理的jad反转换文件的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。