使用Jad或JadClipse进行反编译

使用Jad或JadClipse进行反编译

以前一直用这jad,突然要研究jar包时就不方便了,不过当然是有eclipse插件的jadclipse,好像有for intelliJ IDEA的。

1。下载:

(1)jadclipse插件:
到SourceForge.net(http://sourceforge.net/projects/jadclipse/)下载插件:
下载jadclipse_3.1.0.jar版本,支持eclipse3.1M6以上
下载jadclipse_3.2.0.jar版本,支持eclipse3.2M3和eclipse3.2M4.
下载jadclipse_3.2.2.jar版本,支持eclipse3.2M5以上。

(2)jad1.5.8e编译程序
       下载地址http://www.kpdus.com/jad.html#download
       下载后解压。解压缩后将jad.exe拷贝到JRE的bin目录下,如/Java/jre1.5.0_06/bin

2。加载插件:
若插件包为:net.sf.jadclipse_3.2.4.jar
(1)直接放入eclipse/plugins/下;(2)插件统一管理:建立如下目录树:IDE/eclipsePlugin/jadclipse/eclipse/plugins,
然后将net.sf.jadclipse_3.2.4.jar放入这个路径的plugins下。
启动eclipse,在Help->About Eclipse SDK->Plug-in Details下就可以看到JadClipse插件信息了。

3。设置:

启动eclipse,打开:Window->Preferences->Java->JadClipse,假如没有找到JadClipse,检查插件安装的版本是否与你安装的eclipse版本

对应。
在这里可以很清楚地进行设置了。
可以在Eclipse的Windows—> Perference—>General->Editors->File Associations中修改“*.class”默认关联的编辑器为“JadClipse Class File Viewer”,一般插件会自动关联。

(1)Path to decompiler,这里设置反编译工具jad的全路径名,比如:%JAVA_HOME%/bin/jad.exe.
      若你在环境变量中设置了path指向Java安装路径的bin下就不用改了,默认是jad。
(2)Directory for temporary files,这里设置临时文件路径。

    至于Window->Preferences->Java->JadClipse目录下的Debug,Directives,Formatting,Misc目录中的参数设置,默认就够了。

4.一切自动化 ,查看.class在eclipse中双击就OK了。

用上这个后jad那个程序好像就可以放兜里了,不过还是附上它的命令使用说明:

反编译单个JAVA语言的CLASS文件,在命令行输入:jad example.class回车.
让后在你当前目录会生成一个Example.jad的文件!把它的后缀改为java就可以阅读了!(你可以忽略.class后缀)
选项 -s<后缀>允许你更改输出文件的后缀.
        jad -sjava example.class
这条命令生成文件''example.java''.当你同时使用选项-o和-sjava时要小心了,因为Jad会意外的覆盖掉你的源文件.

jad使用JAVA的CLASS文件名作为默认的输出文件名.举个例子,如果CLASS文件''example.class''包含了JAVA的CLASS''test''那么jad会优先生

成''test.jad''.如果你想要指定一自己的输出文件名,请使用重定向:
        jad -p example.class >myexm.java

选项-d允许你指定输出文件到另外一个文件夹,这个文件夹将默认创建在当前目录.举个例子:
        jad -o -dtest -sjava *.class
        (或者jad -o -d test -s java *.class,两者是一样的)
这条命令反编译所有.class文件在当前目录并且放置所有输出文件在目录''test''以.java为后缀名.

如果你想反编译整个java类树,用如下命令:
        jad -o -r -sjava -dsrc tree/**/*.class
这条命令反编译所有.class文件位于''tree''以及子目录并且建立输出文件在''src''目录的相对子目录中依照类的包名.举个例子,如果文

件''tree/a/b/c.class''包含类''c''来自包''a.b'',那么数车文件的名字是''src/a/b/c.java''.

万一你想要检查输出文件的精确度或者就是仅仅是好奇,这儿有个选项-a,它让jad使用JAVA虚拟机字节码作为注释添加在输出文件中.

jad支持内部类和匿名类,当jad把通配符搭配到输入的文件名时,它自动的跳过匹配的内部类.

 

from:http://www.diybl.com/course/3_program/java/javashl/2008411/110058.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Jadclips插件的安装方法: 方法1:直接将jadclipse_3.1.0.jar复制到%ECLIPSE_HOME%\plugins目录下。 方法2:使用link方式安装,如在C:\Program Files\MyEclipse 6.5\plugins-link\目录下, 新建三个文件夹:jadclipse3.1.0\eclipse\plugins,把jar放在plugins下。再在目录 C:\Program Files\MyEclipse 6.5\eclipse\links下建立文件:jadclipse3.1.0.link, 内容为:path=C:/Program Files/MyEclipse 6.5/plugins-link/jadclipse3.1.0,启动eclipse打开Window->Preferences->Java->JadClipse,如果没有找到JadClipse,检查插件安装的版本是否与你安装的eclipse版本对应。 2.)设置成class文件的缺省打开方式 eclipse自动将JadClipse Class File Viewer设置成class文件的缺省打开方式。如果没有默认,可以在EclipseWindows-> Perference- >General->Editors->File Associations中修改“*.class”默认关联的编辑器为“JadClipse Class File Viewer”。设置完成后,双击 *.class文件,eclipse将自动反编译。 3.)在用jadclipse的时候,一定要加入jad.exe这个程序,如果只有插件而没有jad,那么还是不能反编译成功,会显示如下所示的错误,因此 我们还要安装jadJad反编译工具 将下载的压缩包解压后复制jad.exe至你的%JAVA_HOME%\bin目录下,这样做的好处是使用方便。然后在Eclipse中设置一下,选择”窗口”- “首选项”-“Java”-“JadClipse”,在path to decompiler中输入jad.exe的绝对路径。这样做是为了保证反编译的效果。 在Directory for temporary files中指定临时文件的路径。
Beyond Compare 是一款非常强大的文件比较工具,可以用于比较和合并各种类型的文件和文件夹。然而,Beyond Compare 默认情况下并不支持 Java 反编译,因为它主要是用于比较文本、二进制、图像等类型的文件,而不是代码文件。 不过,有一些第三方插件可以为 Beyond Compare 添加 Java 反编译功能。一种常用的插件Jadclipse,它是一个用于 Eclipse插件,可以在 Eclipse 中将编译后的 Java 类文件反编译为源代码。使用 Jadclipse 插件后,我们可以在 Beyond Compare 中选择将编译后的 Java 类文件与其对应的源代码文件进行比较,以查看源代码的差异。 要使用 Jadclipse 插件,我们首先需要在 Beyond Compare 中进行设置。在 Beyond Compare 的“工具”菜单中选择“自定义文件类型”选项,然后点击“新建”按钮。在弹出的窗口中,输入文件类型名称为“Java Class”,文件扩展名为“.class”,然后在后面的“转换”栏中填写 Jadclipse 的路径,以便 Beyond Compare 通过它来反编译 Java 类文件。 完成设置后,我们就可以使用 Beyond Compare 打开编译后的 Java 类文件与源代码文件进行比较了。在比较结果中,我们可以看到类方法的差异,反编译后的源代码可以作为比较结果的一部分显示。 需要注意的是,Jadclipse 插件只能对编译后的类文件进行反编译,而无法对已经压缩和混淆的类文件进行有效的反编译。对于混淆的代码,可能需要使用其他工具来还原源代码。 总而言之,通过添加 Jadclipse 插件,我们可以在 Beyond Compare 中对 Java 类文件进行反编译和比较,以便更好地理解和分析代码的差异。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值