加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java反编译

发布时间:2020-12-15 01:58:06 所属栏目:Java 来源:网络整理
导读:? 工具下载:https://varaneckas.com/jad/ 以下假设jad.exe在c:java目录下 一、基本用法 Usage:jad [option(s)] 直接输入类文件名,且支持通配符,如下所示。 c:javajad example1.class c:javajad *.class 结果是将example1.class反编译为example1.jad

?

工具下载:https://varaneckas.com/jad/

以下假设jad.exe在c:java目录下

一、基本用法
  Usage:jad [option(s)]
  直接输入类文件名,且支持通配符,如下所示。
  c:java&;jad example1.class
  c:java&;jad *.class
  结果是将example1.class反编译为example1.jad。将example1.jad改为example1.java即得源文件。

二、Option -o
  不提示,覆盖源文件

三、Option -s
  c:java&;jad -sjava example1.class
  反编译结果以.java为扩展名。

四、Option -p
  将反编译结果输出到屏幕
  c:java&;jad -p example1.class
  将反编译结果重定向到文件
  c:java&;jad -p example1.class>example1.java

五、Option -d
  指定反编译的输出文件目录
  c:java&;jad -o -dtest -sjava *.class

?jad命令的参数含义如下:
???????-o:覆盖旧文件,而且不用提示确认。
???????-r:重新加载生成包结构。
???????-s (java):定义输出文件的扩展名。jad为默认扩展名,我们反编译后当然是要.java源文件了。
???????-d:输出文件的目录。src表示反编译后的所有文件都放在src目录下。
???????classes/**/*.class:classes是需要反编译的文件夹的名字,整个表示classes目录下的所有class文件。你也可以写成这样**/*.class,这表示当前目录及其子目录下所有的class文件(包含所有的子目录)。

例如:

D:mapreduce>jad -o -r -sjava *.class

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读