7款开源Java反编译工具推荐

电子说

1.3w人已加入

描述

  什么是编译

  1、利用编译程序从源语言编写的源程序产生目标程序的过程

  2、用编译程序产生目标程序的动作。 编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。 编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息,具体参考 Javac编译与JIT编译

  什么是反编译

  计算机软件反向工程(Reverse engineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中

  Java类的编译与反编译

  我们在最初学习Java的时候,会接触到两个命令:javac和java,那个时候我们就知道,javac是用来编译Java类的,就是将我们写好的helloworld.java文件编译成helloworld.class文件

  编译工具

  那么反编译呢,就是通过helloworld.class文件得到java文件(或者说是程序员能看懂的Java文件)

  什么时候会用到反编译

  1、我们只有一个类的class文件,但是我们又看不懂Java的class文件,那么我们可以把它反编译成我们可以看得懂的文件

  2、学习Java过程中,JDK的每个版本都会加入越来越多的语法糖,有些时候我们想知道Java一些实现细节,我们可以借助反编译。以下是小编推荐的七款开源Java反编译工具,一起来了解一下。

  7款开源Java反编译工具

  1、Java反编译插件 —— Jadclipse

  JadClipse是Jad的Eclipse插件,是一款非常实用而且方便地Java反编译插件,我们只需将下载的插件包复制到eclipse的plugins目录下,然后修改window -》 Preferences -》 Java -》 JadClipse 下的Path to decompiler ,如:C:\pin\jadnt158\jad.exe,最后在Windows -》 Perference -》 General -》 Editors -》 File Associations中修改“*.class”默认关联的编辑器为“JadClipse Class File Viewer” 即可。

  编译工具

  官方网站:http://sourceforge.net/projects/jadclipse/

  2、Java反编译工具 jad

  jad是一款使用非常广泛地Java反编译工具,上面这款Jadclipse就是基于jad的反编译插件,JAD 文件包含 MIDlet 套件的标题信息,例如开发应用程序的公司、应用程序名称和大小。

  官方网站:http://varaneckas.com/jad/

  3、Java 反编译器 JD-GUI

  JD-GUI 是一个用 C++ 开发的 Java 反编译工具,由 Pavel Kouznetsov开发,支持Windows、Linux和苹果Mac Os三个平台。而且提供了Eclipse平台下的插件JD-Eclipse。JD-GUI不需要安装,直接点击运行,可以反编译jar,class文件。

  编译工具

  官方网站:http://jd.benow.ca/

  4、Java反编译器 jdec

  jdec是一个Java反编译器。它能够把出现在一个.class文件中的字节码还原成Java源代码,反编译的结果几乎与原始Java文件相同。它还自带一个利用swing开发的用户操作界面。

  编译工具

  官方网站:http://jdec.sourceforge.net/

  5、uuDeJava

  uuDeJava是Java Class文件的反编译工具。反编译的Java源程序被输出到Class的相同目录。内部使用jad.exe。反编译Class文件时,可以直接点击Class文件(关联后),或者选中文件或目录发送到uuDeJava的快捷方式。还可以拖动文件或目录到uuDeJava的主窗口。

  编译工具

  官方网站:http://www.uuware.com/uudejava_cn.htm

  6、Java 反向工程软件 Minjava

  Minjava 是一个 Java 反向工程软件,可帮助理解已存在一些 Java 软件的架构和行为。

  编译工具

  官方网站:https://code.google.com/p/minjava/

  7、Java Decompiler

  这款反编译器叫 “Java Decompiler”, 由 Pavel Kouznetsov开发,目前最新版本为0.2.5. 它由 C++开发,并且官方可以下载 windows、linux和苹果Mac Os三个平台的可执行程序。

  官方网站:http://jd.benow.ca/

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分