eclipsejava反编译
Jodeclipse 是Jode的Eclipse插件,JadClipse是Jad的Eclipse插件,它们都是非常好的反编译插件。
Jode Eclipse Plugin 1.0.5 for Eclipse version 3.1 / 3.2
安装方法
(1)从如下地址下载:
http://sourceforge.net/projects/jodeeclipse
把下载下来的文件jodeplugin_1.0.5.zip直接解压到eclipse的plugins目录下。
(2)启动eclipse,help -> Software Updates-> Find and Install... -> Search for new features to install,单击"New Remote Site..." 在URL栏输入 http://www.technoetic.com/eclipse/update然后下一步,就可以看到“jode decompiler plugin *.*”,选上安装就可以了。安装好后可以看到Window -> Preferences...-> Java -> Jode Decompiler选项卡,okay,安装成功了。
配置:Window-> Preferences... -> General -> Editors -> File Associations找到"*.class"在"Associated editors"里面可以看到"Jode class file viewer"选中它再单击Default按钮.
JadClipse Eclipse Plugin for Eclipse version 3.1 / 3.2/3.3
一、下载:
下载插件:
下载jadclipse_3.1.0.jar版本,该版本支持eclipse3.1M6~3.2M2
下载jadclipse_3.2.0.jar版本,该版本支持eclipse3.2M3和eclipse3.2M4.
下载jadclipse_3.2.4.jar版本,该版本支持eclipse3.2M5~3.3M5
下载jadclipse_3.3.0.jar版本,该版本支持eclipse3.3M6以上版本
下载Jad反编译工具:
http://www.kps.com/jad.html#download,在该页中找到适合自己操作系统平台的jad下载。下载后解压,然后将解压后的jad.exe文件复制到%JAVA_HOME%\bin目录下面(可以将jad.exe放到任意位置,只要记住其存放路径就好,下面要用到)。
二、安装:
Eclipse中的插件安装可以参考:Eclipse使用技巧
方法1、直接将jadclipse_x.x.x.jar(x.x.x.代表版本号)复制到%ECLIPSE_HOME%\plugins目录下。
方法2、使用link方式安装,建立D:\Myplugins\jadclipse3.2.4\eclipse\plugins的目录结构,将jadclipse_3.2.4.jar放到plugins目录下面(注:其中D:\Myplugins为你自己定义的一个专门放置插件的目录)。再在%ECLIPSE_HOME%\links目录下面建立一个jadclipse3.2.4.link文件(该文件名随便取)。文件里面内容为:path=D:/Myplugins/jadclipse3.2.4.
三、使用:
启动eclipse,点击反编译的类文件,此时会激活jadclipse插件,在eclipse菜单中会多出一个jadclipse菜单,如下图所示:
jadclipse插件
一般地它会自动反编译相应的class文件,如果没有自动反编译,请点击jadclipse->Decompile
B. 什么是Java代码的编译与反编译
Java代码的编译与反编译
2017-02-21Hollis数盟
一、什么是编译
1、利用编译程序从源语言编写的源程序产生目标程序的过程。
2、用编译程序产生目标程序的动作。编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。
二、什么是反编译
计算机软件反向工程(Reverseengineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中。
三、Java类的编译与反编译
我们在最初学习Java的时候,会接触到两个命令:javac和java,那个时候我们就知道,javac是用来编译Java类的,就是将我们写好的helloworld.java文件编译成helloworld.class文件。
class文件打破了C或者C++等语言所遵循的传统,使用这些传统语言写的程序通常首先被编译,然后被连接成单独的、专门支持特定硬件平台和操作系统的二进制文件。通常情况下,一个平台上的二进制可执行文件不能在其他平台上工作。而Javaclass文件是可以运行在任何支持Java虚拟机的硬件平台和操作系统上的二进制文件。
那么反编译呢,就是通过helloworld.class文件得到java文件(或者说是程序员能看懂的Java文件)
四、什么时候会用到反编译
1、我们只有一个类的class文件,但是我们又看不懂Java的class文件,那么我们可以把它反编译成我们可以看得懂的文件。
2、学习Java过程中,JDK的每个版本都会加入越来越多的语法糖,有些时候我们想知道Java一些实现细节,我们可以借助反编译。
五、反编译工具
1、javap
2、Jad:官网(墙裂推荐)
客户端:
可以在官网下载可执行文件,找到对应的操作系统的对应版本,然后进行安装使用。
因为我使用的是linux操作系统,所以我下载的是Linux版本的工具,这个工具下载好之后会有一个执行文件,只要在执行文件所在目录执行./jadhelloworld.class就会在当前目录下生成helloworld.jad文件,该文件里就是我们很熟悉的Java代码
Eclipse插件:
下载地址在官网下载插件的jar包,然后将jar包放到eclipse的plugins目录下‘在打开Eclipse,Eclipse->Window->Preferences->Java,此时你会发现会比原来多了一个JadClipse的选项,单击,在Pathtodecompiler中输入你刚才放置jad.exe的位置,也可以制定临时文件的目录。当然在JadClipse下还有一些子选项,如Debug,Directives等,按照默认配置即可。基本配置完毕后,我们可以查看一下class文件的默认打开方式,Eclipse->Window->Preferences->General->Editors->FileAssociations我们可以看到class文件的打开方式有两个,JadClipse和Eclipse自带的ClassFileViewer,而JadClipse是默认的。全部配置完成,下面我们可以查看源码了,选择需要查看的类,按F3即可查看源码
C. 函数跳转&反编译(java:Eclipse)
在Java开发过程中,Eclipse提供了一系列强大的工具帮助开发者进行代码的跳转和反编译操作,以提高开发效率和理解代码的便利性。
首先,当开发者拥有对应的Java源码文件时,Eclipse提供了丰富的跳转功能。例如,"open declaration" 可以快速跳转到类或函数的定义位置,"open implementation" 则能定位到函数的具体实现代码。为了方便在不同位置间来回切换,开发者可以使用快捷键 "alt + 左向箭头" 返回至引用方法前的位置,使用 "alt + 右向箭头" 跳转至引用方法。
然而,在未拥有Java源码文件的情况下,Eclipse也提供了反编译功能以帮助开发者理解类文件。这一过程需要通过安装特定插件,例如 Jadclipse,来实现。首先,用户需从官方下载Jad插件的最新版本,并确保其与Eclipse版本兼容。接着,将Jadclipse插件安装至Eclipse环境中,并配置用于编辑类文件的关联编辑器。之后,通过在Eclipse中建立与Jad的关联关系,即可实现对本地.class文件的反编译操作。在新的开发环境中,开发者可以通过此功能实现对第三方非开源jar包的二次开发,特别是在缺少详细技术文档的情况下,class文件等同于java文件,能提供极大的帮助。
D. 几种java反编译软件的安装以及使用总结
下面是在网上找的几种反编译软件的安装以及使用:
一、JD-JUI
官网下载链接:http://jd.benow.ca/
下载之后解压,
点击“jd-gui.exe”运行:
直接将".jar"文件拖入进去即可查看里边的“.class”文件,如上图所示。
二:Luyten
官网下载链接:https://github.com/deathmarine/Luyten/releases/tag/v0.5.3
点击“luyten-0.5.3.exe”下载,下载之后点击运行,运行后的界面如图所示,同样也是讲“.jar”文件拖入进入即可。
三、在eclipse中安装反编译工具
准备工作:
“jad.exe”下载:https://varaneckas.com/jad/
“net.sf.jadclipse_3.3.0.jar”下载:https://sourceforge.net/projects/jadclipse/files/
jad.exe”下载:
“net.sf.jadclipse_3.3.0.jar”下载:
然后将“net.sf.jadclipse_3.3.0.jar”拷贝到eclipse的plugins目录下,再删除eclipse的configuration目录下“org.eclipse.update”文件,这一步很重要!
重启eclipse,点击window->Preference->Java,你会发现里边多了一个插件“JadClipse”,
选中这个插件,将下图中红圈圈的地方的地址填写为你 “jad.exe”文件的地址
还没有配置完,先不要close,
点击General->Editors->File Associations 后,进入下边的界面
设置.class 文件默认打开方式:
设置.class without source文件的默认打开方式,
需要注意的是,“JadClipse Class File Viewer”这个一开始是没有的,需用添加,如下图所示:
接下来在eclipse中查看反编译后的代码:(这种方法可能不合适,但是能够查看)
新建一个EJB project,右键“import”,选中"EJB JAR file",导入你的jar包,Finish
在项目下找你要查看的反编译的文件即可,如果你遇到了下边的这种情况
关闭这个文件后再次打开,就可以查看了(我的是这样,所以我感觉这个方法不太好,但别的方法又不知道怎么查看):
有错误或者有更好的方法,希望大家在下边留言指出
E. 如何在eclipse中配置反编译工具JadClipse
在eclipse中配置反编译工具JadClipse的方法:
1、下载JadClipse,注意选择与eclipse版本一致的版本,推荐使用Eclipse3.4,所以选择下载版本net.sf.jadclipse_3.3.0.jar
2、下载Jad,网络搜索最新地址,下载相应版本
3、将下载下来的Jadclipse,如net.sf.jadclipse_3.3.0.jar拷贝到Eclipse下的plugins目录即可。
4、将Jad.exe拷贝到JDK安装目录下的bin文件下(方便,与java,javac等常用命令放在一起,可以直接在控制台使用jad命令),比如作者的目录是D:Program FilesJavajdk1.6.0_02injad.exe
F. 最好的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” 即可。
2、Java反编译工具 jad
jad是一款使用非常广泛地Java反编译工具,上面这款Jadclipse就是基于jad的反编译插件,JAD 文件包含 MIDlet 套件的标题信息,例如开发应用程序的公司、应用程序名称和大小。
3、Java 反编译器 JD-GUI
JD-GUI 是一个用 C++ 开发的 Java 反编译工具,由 Pavel Kouznetsov开发,支持Windows、Linux和苹果Mac Os三个平台。而且提供了Eclipse平台下的插件JD-Eclipse。JD-GUI不需要安装,直接点击运行,可以反编译jar,class文件。
4、Java反编译器 jdec
jdec是一个Java反编译器。它能够把出现在一个.class文件中的字节码还原成Java源代码,反编译的结果几乎与原始Java文件相同。它还自带一个利用swing开发的用户操作界面。
5、uuDeJava
uuDeJava是Java Class文件的反编译工具。反编译的Java源程序被输出到Class的相同目录。内部使用jad.exe。反编译Class文件时,可以直接点击Class文件(关联后),或者选中文件或目录发送到uuDeJava的快捷方式。还可以拖动文件或目录到uuDeJava的主窗口。
6、Java 反向工程软件 Minjava
Minjava 是一个 Java 反向工程软件,可帮助理解已存在一些 Java 软件的架构和行为。
7、Java Decompiler
这款反编译器叫 “Java Decompiler”, 由 Pavel Kouznetsov开发,目前最新版本为0.2.5. 它由 C++开发,并且官方可以下载 windows、linux和苹果Mac Os三个平台的可执行程序。