eclise中安装JAVA反编译工具jad
- 格式:doc
- 大小:23.00 KB
- 文档页数:2
Java反编译⼯具Jad详解项⽬过程中需要反编译⼀个jar包,于是作了⼀些学习,记录下来。
(JAva Decompiler)是⼀个Java的反编译器,可以通过命令⾏把Java的class⽂件反编译成源代码。
如果你在使⽤编写代码的时候遇到找不到源代码的第三⽅库,⽽且你⼜需要看看这个库的具体实现,那么你就需要使⽤这个东西。
⽽且如果你是使⽤Eclipse的话,还有⼀个Eclipse插件,提供⼀个class⽂件查看器可以直接打开class⽂件查看其反编译后的源代码,太⽅便了,太⽅便了!不过,可惜的是这个开源项⽬似乎已经关闭了,官⽅⽹站已经上不去了,有个叫Tomas Varaneckas的好⼼⼈收集了所有的版本提供给⼤家下载:⽽且这个最新的版本也只⽀持Java 4,不⽀持Java 5。
还有⼀个叫做的⼯具⽀持Java 5的新特性,如enum等,⽽且它提供独⽴的GUI程序和基于Eclipse的插件,也很⽅便。
但是对于,作者没有提供下载的链接,他说“Open the sources of JD-Core is not on my roadmap: I spent too many time on this project.”当然后⾯也有⼀⼤篇⽂章是别⼈⽤来骂他的,可以看,蛮有意思。
我的项⽬中需要将第三⽅库反编译出来,让后对其进⾏修改,然后再编译,不仅仅是查看,因此只能⽤命令⾏的Jad来做。
使⽤⽅法:[1] 反编译⼀个class⽂件:jad example.class,会⽣成example.jad,⽤⽂本编辑器打开就是java源代码[2] 指定⽣成源代码的后缀名:jad -sjava example.class,⽣成example.java[3] 改变⽣成的源代码的名称,可以先使⽤-p将反编译后的源代码输出到控制台窗⼝,然后使⽤重定向,输出到⽂件:jad -p example.class > myexample.java[4] 把源代码⽂件输出到指定的⽬录:jad -dnewdir -sjava example.class,在newdir⽬录下⽣成example.java[5] 把packages⽬录下的class⽂件全部反编译:jad -sjava packages/*.class[6] 把packages⽬录以及⼦⽬录下的⽂件全部反编译:jad -sjava packages/**/*.class,不过你仍然会发现所有的源代码⽂件被放到了同⼀个⽂件中,没有按照class⽂件的包路径建⽴起路径[7] 把packages⽬录以及⼦⽬录下的⽂件全部反编译并建⽴和java包⼀致的⽂件夹路径,可以使⽤-r命令:jad -r -sjava packages/**/*.class[8] 当重复使⽤命令反编译时,Jad会提⽰“whether you want to overwrite it or not”,使⽤-o可以强制覆盖旧⽂件[9] 还有其他的参数可以设置⽣成的源代码的格式,可以输⼊jad命令查看帮助,这⾥有个⼈做了简单的翻译:[10] 当然,你会发现有些源⽂件头部有些注释信息,不⽤找了,jad没有参数可以去掉它,⽤别的办法吧。
MyEclipse6.0配置反编译工具Jad及插件JadClipseJad是一个Java的一个反编译工具,是用命令行执行的,比较麻烦。
但把Jad结合eclipse的插件JadClipse,可以方便的在eclipse中查看class文件的源代码。
现把我的配置过程整理于以下:1.首先准备JAD和JadClipse.可以到网上下载.(1)下载的JadClipse: net.sf.jadclipse_3.3.0.jar (注意不同的eclipse 版本要选择相应的 JadClipse,我选择用的net.sf.jadclipse_3.3.0.jar )(2)下载JAD:2.将下载下来的Jadclipse,即net.sf.jadclipse_3.3.0.jar拷贝到Eclipse下的plugins目录即可.(如我的路径D:\Program Files\MyEclipse 6.0\eclipse\plugins)3.将Jad.exe拷贝到JDK安装目录下的bin文件下(当然你也可以放在别的地方,但放在JDK的bin目录下可以方便的与java,javac等常用命令放在一起,可以直接在控制台使用jad命令),我的机器上的目录是D:\Program Files\Java\jdk1.6.0_02\bin\jad.exe4.重新启动Eclipse,找到Eclipse->Window->Preferences->Java,此时你会发现会比原来多了一个JadClipse的选项。
单击,在Path to decompiler中输入刚才放置jad.exe 的位置,即我刚才的D:\Program Files\Java\jdk1.6.0_02\bin\jad.exe。
当然如果你的JAD 位置不同的话,你就选择你自己的路径5.配置完成。
现在我们可以查看源码了,选择需要查看的类,按F3即可查看源码。
也可以直接点击class类查看。
java反编译工具--jad及小颖反编译专家的用法和使用详解当下载一个软件是jar格式的,我们可以使用jar2cod这个软件将它转换成cod格式,通过桌面管理器装到我们的bb上;如果你的电脑上安装了winrar并且没有安装jdk或者其他java开发工具,jar格式的文件的图标就是一个压缩包的图标,我们可以将它解压,解压后可以看到里面包含了一些class 文件和其他一些文件,.class后缀名的文件就是java源程序通过编译生成的类文件,而jar是对一个程序中所有需要用到的类和其他资源打包的结果。
如果想深入的了解一下别人的软件是如何开发出来的,可以使用jad这个文件对class文件进行反编译。
最新版的jad是1.5.8,下面我们来说一说jad的使用方法。
前提: 1.系统中安装了jdk;2.正确的设置了系统的环境变量。
Java下的一个简单易用的反编译工具jad, 可以很方便的将.class反编译为.Java.一、基本用法假设在c:\Java\目录下包含有一个名为example1.class的文件,反编译方法如下所示。
c:\Java\>jad example1.class结果是将example1.class反编译为example1.jad。
将example1.jad改为example1.Java 即得源文件。
c:\Java\>jad *.class上述语句可以反编译c:\Java\目录下所有的class文件。
二、Option -o不提示,覆盖源文件三、Option -sc:\Java\>jad –s Java example1.class反编译结果以.Java为扩展名。
编译出来的文件就是example1.java四、Option -p将反编译结果输出到屏幕c:\Java\>jad -p example1.class将反编译结果重定向到文件c:\Java\>jad -p example1.class>example1.Java五、Option -d指定反编译的输出文件目录c:\Java\>jad -o –d test –s Java *.class上述语句是将c:\Java\下所有class文件反编译输出到test目录下。
文章标题:深入探讨eclipse中Java Web项目反编译的方法与重要性在当今数字化时代,软件开发已经成为不可或缺的一部分。
Java作为一种流行的编程语言,在企业级应用开发中被广泛应用。
而在Java开发过程中,反编译在项目维护和安全性检查中扮演着至关重要的角色。
本文将从深度和广度两个方面对eclipse中Java Web项目反编译的方法与重要性进行全面评估,并提供有价值的观点和理解。
一、eclipse中Java Web项目的反编译方法1. 导入反编译工具:在eclipse中,可以通过导入各种反编译工具来实现对Java Web项目的反编译。
常用的工具包括JD-GUI、Procyon 等,它们能够将.class文件转换为易于阅读的源代码,帮助开发者更好地理解和维护项目。
2. 设置反编译快捷键:在eclipse的设置中,可以为反编译工具设置快捷键,便于开发者在需要时快速进行反编译操作。
这样可以提高效率,减少开发过程中出现的问题。
3. 调试和修复:通过反编译工具,开发者可以方便地进行调试和修复工作,及时解决项目中的bug和错误。
这也是保障项目质量的关键步骤。
二、eclipse中Java Web项目反编译的重要性1. 代码安全性检查:反编译工具可以帮助开发者检查项目代码的安全性,避免出现潜在的漏洞和安全隐患。
通过查看反编译后的源代码,可以及时发现并修复可能存在的安全问题。
2. 项目维护与升级:在项目维护和升级过程中,使用反编译工具可以更好地理解现有的代码结构和逻辑,有助于进行代码重构和优化。
这对于提升项目的可维护性和可扩展性非常重要。
3. 知识学习和技术共享:通过反编译工具,开发者还可以学习他人的优秀代码和技术经验,提高自身的编程能力和水平。
也可以共享自己的代码给他人学习,促进技术交流和共同进步。
个人观点与理解对我个人而言,eclipse中Java Web项目反编译不仅是一项必需的技能,更是一种重要的态度和责任。
一、前提:1、已经安装了Eclipse,如我的Eclipse目录:E:\Work_Soft\Eclipse2、反编译插件包:eclipse 反编译插件_jad 3.3.0.zip二、步骤:1、解压反编译插件包“eclipse 反编译插件_jad 3.3.0.zip”;2、将插件包中的net.sf.jadclipse_3.3.0.jar文件复制到Eclipse 的插件目录下(如E:\Work_Soft\Eclipse\plugins);3、启动Eclipse;4、点击【Window】 --> 【Preferences】,在弹出的对话框中选中JadClipse进行设置,在右侧Path to decompiler的文本框中输入jad.exe文件的绝对路径,如下图:三、常见问题1、在Preferences对话框中找不到JadClipse这一项解决方法:先确认net.sf.jadclipse_3.3.0.jar这个插件文件有无正确安装或是否能和你的Eclipse版本匹配(我的Eclipse是3.5.2版本),同时在启动Eclipse前先在快捷方式中添加clean参数后在启动。
2、正确安装后,还是无法反编译解决方法:设置class文件的默认打开方式点击【Window】 --> 【Preferences】,在弹出的对话框中选中【General --> Editors --> File Associations】,在右侧选中【*.class】然后点下方的【Add...】按钮,在弹出的对话框中选中【JadClipse Class File Viewer】这一项,点击【OK】;回到Preferences界面后,选中右侧下方的【JadClipse Class File Viewer】这一项,点击右侧的【Default】后,在点击最下方的【OK】保存设置即可;如下图:但是要补充一下,新版本的eclipse (version: Juno Release)需要设置File Associations 中 File types: 的*.class without source 选择 Associated editors:JadClipse Class File Viewer(default)。
MyEclipse10.6myeclipse2013下添加jadClipse反编译插件.jad是一个使用比较广泛的Java反编译软件,jadClipse是jad在eclipse下的插件,下面像大家介绍下如何将jadclipse加入到MyEclipse10.X,9.X,8.X,6.X等各版本当中:1./project/jadclipse/jadclipse3.3/3.3.0%20%28for%20Eclipse %20_%3D3.3M6%29/net.sf.jadclipse_3.3.0.jar在这个地址下载jad 的eclipse插件,下载的是一个jar文件,可能myeclipse的版本不一样需要对应的eclipse版本的jar文件,/wiki/index.php/Main_Page,可以去这里了解详细情况2./sites/default/files/jad/jad158g.win.zip,下载jad主程序,不同的操作系统主程序不一样,这里以windows为例,如果需要下载别的操作系统的程序可以前往:/jad了解详细情况3.在文件夹{MYECLIPSE_HOME}(MyEclipse安装目录)\MyEclipse 10\dropins下建立一个文件夹jad,可能myeclipse 的版本不一样,路径会有所区别。
在新建的jad文件夹中新建两个文件夹:plugins;features;然后将下载来的jar放入到plugins文件夹中4.在主程序解压出来得到jad.exe文件,为了方便将他放到jdk的bin目录下,如果放到别的地方需要进行在环境变量里设置路径。
5.启动myelipse,Window->Preferences->Java->JadClipse,进行设置,Path to decomplier项填写你的jad.exe路径,下面那个默认就可以.path to decompile:如C:\Program Files\Java\jdk1.6.0_02\bin\jad.exe6.Window->Preferences->General->Editors->File Associations,将.class文件默认成通过JadClipse Class File Viewer打开。
反编译插件jadclipse使用
反编译插件jadclipse下载:
选择适合版本的jar文件下载
然后根据Installation 的说明安装配置
1,把下载的 JadClipse JAR 文件放在Eclipse安装目录的plugins 文件夹下,(我本机的路径是D:\MyEclipse 6.0\eclipse\plugins)2,重启Eclipse,
3,下载jad,,选择适合的版本,
4,把jad.exe 放在系统路径中,(例如C:\Program Files\Jad\jad.exe),然后在Eclipse中选择Window > Preferences... > Java > JadClipse > Path to Decompiler,填写jad.exe的路径,在Directory for tempcrary files中填写临时文件路径,如下图
5,选择,Window > Preferences... > General > Editors > File Associations 选择*.class文件,如下图
选择 Associated editors 选中 JadClipse class File Viewer ,选择右边的 Default 按钮,如下图
当 JadClipse class File Viewer 变为 defaule之后,如下图
至此,jadClipse插件就安装完成了,你可以双击 class文件或者是把鼠标放在想看的类或方法名上,然后按住ctrl点击,就可以看到反编译后的源文件了,。
本文由leveldc贡献 java反编译工具jad 1.5.8g支持 jdk1.5,jdk1.6。
说明很多 记住一个万能的命令基本就够用了。
jad -sjava -r -8 -o **\*.class 反编译工具jad简单用法 以下假设jad.exe在c:\java目录下 一、基本用法 Usage: jad [option(s)] <filename(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 命令行选择的列表 -a - 用JVM字节格式来注解输出 -af - 同 -a,但是注解的时候用全名称 -clear - 清除所有的前缀 -b - 输出多于的括号 (e.g., if(a) { b(); }, default: no) -d - 指定输出文件的文件目录 -dead -试图反编译代码的dead 部分(default: no) -disass - 不用用字节码的方式反编译 (no JAVA source generated) -f - 输出整个的名字,无论是类还是方法 -ff -输出类的成员在方法之前 (default: after methods) -i - 输出所有的变量的缺省的最初值 -l<num> - 将strings分割成指定数目的块的字符 (default: no) -lnc - 将输出文件用行号来注解 (default: no) -nl - 分割strings用新行字符 newline character (default: no) -nodos -不要去检查class文件是否以dos方式写 (CR before NL, default: check) -nocast - 不要生成辅助文件 -nocode -不要生成方法的源代码 -noconv - 不要转换java的定义符 (default: do) -noctor - 不允许空的构造器存在 -noinner -关掉对内部类的支持 (default: turn on) -nolvt - 忽略局部变量的表信息 -nonlb - 不要输出一个新行在打开一个括号之前 (default: do) -o - 无需确认直接覆盖输出 (default: no) -p - 发送反编译代码到标准输出 STDOUT (e.g., for。
Eclipse中安装反编译⼯具F...IntelliJ IDEA⼀个吸引⼈的地⽅在于,他有⽐较好的反编译⼯具,这让Eclipse⽤户⽛痒痒。
但不要紧,本⽂介绍如何在Eclipse IDE中使⽤IntelliJ IDEA的反编译⼯具Fernflower。
为啥需要反编译很多jar不提供源码,那么打开class是这个鸟样。
不具备⼈类可读性。
因此需要反编译。
什么是Fernflower那么我是怎么知道Fernflower的呢?你随便⽤IntelliJ IDEA打开⼀个jar中的class⽂件,可以看到下⾯的信息,这就是IEDA中的反编译⼯具Fernflower。
Fernflower is the first actually working analytical decompiler for Java and probably for a high-level programming language in general“Fernflower是第⼀个真正为Java⼯作分析反编译器,通常也适⽤于⼀般的⾼级编程语⾔”看介绍是很⽜批的样⼦,当然实际也是。
如何获取Fernflower⾮常遗憾的是,Fernflower是IntelliJ IDEA独家所有,那我是怎么搞定的呢?我先在eclipse市场找了下,没有找到Fernflower,却找到了Enhanced Class DecompilerEnhanced Class Decompiler integrates JD, Jad, FernFlower, CFR, Procyon seamlessly with Eclipse and allows Java developers to debug class files without source code directly. It also integrates with the eclipse class editor, m2e plugin, supports Javadoc, reference search, library source attaching, byte code view and the syntax of JDK8 lambda expression.简⾔之,Enhanced Class Decompiler集JD、Jad、FernFlower、CFR、Procyon等各种反编译⼯具之⼤成。
eclise中安装JAVA反编译工具:jad
来自: 作者: 爪娃
2009-09-20浏览(96) 评论(0) 发表评论
摘要: 一、eclipse反编译插件Jadclipsejadclips插件网站:http://jadc /一、下载:下载插件:下载jadclipse_3.1.0.jar...
一、eclipse反编译插件Jadclipse
jadclips插件网站:
/
一、下载:
下载插件:
下载jadclipse_3.1.0.jar版本,该版本支持eclipse3.1M6以上
下载jadclipse_3.2.0.jar版本,该版本支持eclipse3.2M3和eclipse3.2M4.
下载jadclipse_3.2.2.jar版本,该版本支持eclipse3.2M5以上。
net.sf.jadclipse_3.2.4.jar:for eclipse3.2
net.sf.jadclipse_3.3.0.jar:for eclipse3.3
下载Jad反编译工具:
/jad.html#download,在该页中找到适合自己操作系统平台的jad 下载。
下载后解压,然后将解压后的jad.exe文件复制到%JAVA_HOME%\BIN目录下面(可以将jad.exe随便放到哪,只要记住路径就好,下面要用到)。
二、安装:
方法1、直接将jadclipse_3.3.0.jar复制到%ECLIPSE_HOME%\plugins目录下。
方法2、使用link方式安装,建立E:\eclipse3.3plugins\jadclipse3.3.0\eclipse\plu gins的目录结构,将jadclipse_3.3.0.jar放到plugins目录下面(注:其中E:\eclips e3.3plugins为你自己定义的一个专门放置插件的目录)。
再在%ECLIPSE_HOME%\links目录
下面建立一个jadclipse3.3.0.link文件(该文件名随便取,保证后缀为。
link就OK)。
文件里面内容为:path=E:\\eclipse3.3plugins\\jadclipse3.3.0.启动eclipse,打开W indow->Preferences->Java->JadClipse,如果没有找到JadClipse,检查插件安装的版本是否与你安装的eclipse版本对应。
我安装的eclipse是:eclipse3.3
三、设置参数:
启动eclipse,打开:Window->Preferences->Java->JadClipse.
1、Path to decompiler,这里设置反编译工具jad的全路径名,比如:%JAVA_HOME%\bin\ jad.exe.
2、Directory for temporary files,这里设置临时文件路径。
至于Window->Preferences->Java->JadClipse目录下的Debug,Directives,Formatting,Misc目录中的参数设置,就不罗嗦。
四、安装完成后,eclipse自动将JadClipse Class File Viewer设置成class文件的缺省打开方式。
如果没有默认,可以在Eclipse的Windows——> Perference——>General->Ed itors->File Associations中修改“*.class”默认关联的编辑器为“JadClipse Class Fi le Viewer”。
设置完成后,双击*.class文件,eclipse将自动反编译。
注:对于存在源代码的类,它不会强行反编译,也就是说它还是会用eclipse自带的Clas s File Viewer查看class文件。