Jadclipse--基于eclipse的java反编译工具

Jadclipse--基于eclipse的java反编译工具

很多时候我们可能要查看第三方的程序源码来理清别人的思路。大多数时候jar包仅仅为我们提供了编译好的class字节文件。或者总是下载源码让磁盘越来越不堪重载。或者有些源码和api是付费的,虽然jar包可以免费使用。

能够快速反编译calss文件得到源码,是学习java快速进阶的必要手段。让我们从实现的角度去深入的分析该如何使用第三方程序接口。

eclipse是基于插件方式的开源IDE,也有人提供了基于eclipse的反编译插件IDE,叫“jadclipse”。

jadclipse.sf.net -Jad Java decompiler plugin for Eclipse IDE.

官方介绍网址打开是空白页面,不太清楚是因为官方不再维护此项目还是我的网络的问题。还不错,官方还继续提供给下载链接,还可以访问sourceforge选择下载。

插件的安装

安装特别简单,你可以将下载到的net.sf.jadclipse_3.3.0.jar放到eclipse\dropins目录下面,当eclipse启动的时候,插件将自动安装。

第二种安装方式为:如果你的eclipse版本高于3.4,那么可以直接将net.sf.jadclipse_3.3.0.jar拷贝到eclipse\dropins目录。同样当eclipse启动时,插件将自动安装。

让我们看看安装完后的界面吧。在eclipse菜单中选择Window -- Preferences -- Java -- JadClipse

Jadclipse--基于eclipse的java反编译工具_第1张图片

*jadclipse是一个基于jad的eclipse插件IDE,他本身不提供class文件的反编译。

接下来到了真正请出反编译的主谋了 -- jad

不幸的事情总是伴随着过于激动的情绪而来。jad的官网连域名都没有了。具有共享精神的互联网总是这么神奇,Tomas Varaneckas为我们提供了镜像下载。声明如下:

As http://www.kpdus.com is no longer accessible, JAD Java Decompiler download is extremely hard to find. Here is a mirror where you can get JAD for various platforms.

I will keep this mirror up even if kpdus.com will get back online, just in case.

so,u can download it from this mirror JAD Java Decompiler Download Mirror

jad提供的windows版本是一个可执行的exe文件,jad.exe,你可以将它放置到任何你愿意的目录。我习惯将它放置到eclipse的根目录。

配置反编译IDE环境:如上图所示的jadclipse IDE界面

jadclipse参数设置

1、Path to Decompiler:配置jad的绝对路径。如:D:\eclipse\jad.exe

2、Directory for temporsy files:反编译产生的临时文件位置,可以选择修改或者不修改

3、也可以选中Use Eclipse code formatter(overrides Jad formatting instructions),这样可以将反编译后的代码与Ctrl+Shif+F格式化出来的代码样式保持一致

4、中文的支持:选中JadClipse -- Misc,将Convert Unicode strings into ANSI strings选项打钩

5、检查jadclipse是否被设置为默认的class文件查看器。位置在:eclipse菜单--Window--Perference--General--Editors--File Associations--.calss,确认JadClipse Class File Viewer为默认的查看器

Jadclipse--基于eclipse的java反编译工具_第2张图片

6、jadclipse的其他参数,你可以根据英文意思理解并自行设置,它不会影响反编译效果。

好了,你的eclipse已经可以反编译jar包中的class文件了。快去试试吧 :)

或者你可能不喜欢为eclipse安装过多的插件,如何单独使用jad进行反编译呢?

jad 命令反编译

jad可以将calss文件反编译成java源文件,反编译的目的是为了学习java,一般的商业软件都是做了代码混淆的,请遵守商业软件的版权声明。

我们可以在CMD中设置临时环境变量。以便jad命令可以应用到class目录。

设置jad path 环境变量 -- cmd命令:path=d:/eclipse/;%path%
Jadclipse--基于eclipse的java反编译工具_第3张图片

你可能感兴趣的:(Jadclipse--基于eclipse的java反编译工具)