如何在Eclipse Helios中运行Java Decompiler / JD / JD-Eclipse
Java反编译器(JD)通常被推荐为一个很好的Java反编译器。 JD-Eclipse是JD的Eclipse插件。
我有几个不同的机器上的问题,让插件运行。 每当我尝试打开一个.class文件时,标准的“Source not found”编辑器将显示,显示低级字节码反汇编,而不是您期望从反编译器的Java源输出。
http://java.decompiler.free.fr/?q=jdeclipse中的安装文档并不差,但在排除故障时非常模糊。
打开这个问题来收集更多信息:在Eclipse Helios中运行JD之前遇到了什么问题? 什么是解决scheme?
这是我碰到的东西:
1)RTFM并安装在安装文档顶部提到的“Microsoft Visual C ++ 2008 SP1可再发行组件包”。 起初我错过了这个,因为Helios指令已经结束了。
2)在打开一个类文件之前closures所有打开的编辑器选项卡。 否则,很容易从以前的尝试中获得过时的编辑器选项卡。
3)在“Java类文件编辑器”(而不是“Java类文件查看器”)中打开类文件。 使用上下文菜单中的“打开方式”来获得正确的编辑器。 如果对结果感到满意,则使其成为文件关联设置中的默认编辑器,在“窗口/首选项常规/编辑器/文件关联”中select* .class以使用“Java类文件编辑器”打开。
4) 这家伙build议从Helios更新站点安装Equinox SDK。 我做了,但我不确定这是否真的有必要。 有人知道吗?
5)如果您要查看的类文件在Eclipse Java项目中,则它们需要位于项目的构buildpath中。 否则,Eclipse错误日志中会显示exception(“不在构buildpath中”),反编译将失败。 我将类文件作为库/类文件夹添加到构buildpath。
6)从Windows资源pipe理器拖放一个类文件或打开文件/打开文件…将无法正常工作。 在我的testing中,我给出了“无法打开编辑器:类文件查看器无法处理给定的input('org.eclipse.ui.ide.FileStoreEditorInput')”。 错误。 反正这可能是错误的编辑器,见3)。
7)获得插件基本上运行后,一些文件仍然不会反编译原因不明。 在closures所有选项卡后,重新启动Helios并重试。
为了使它在Eclipse Juno中工作 – 我不得不做一些额外的步骤。
一般 – >编辑 – >文件关联
- select“* .class”并将“Class File Editor”标记为默认值
- select“* .class without source” – >添加 – >“类文件编辑器” – >将其设置为默认值
- 重新开启eclipse
我正在使用Eclipse 3.7 Indigo和Windows 7 64位:
我所做的就是按照网站build议安装Microsoft Visual C ++ 2008 SP1可再发行组件包,并由@Universalspezialist提醒。
然后按照网站上的说明安装插件: http : //java.decompiler.free.fr/?q=jdeclipse
转到首选项,然后find“文件关联”点击* .class,然后将“类文件编辑器”设置为默认值。
也许重新启动Eclipse? (我这样做,但我不确定是否有必要)
JD-eclipse插件0.1.3只能反编译classpath / Build Path中可见的.class文件 。
如果你的类驻留在一个.jar中 ,你可以简单地把这个jar添加到构buildpath作为另一个库。 从包资源pipe理器浏览您的新库,并在类文件编辑器中打开类。
如果要反编译文件系统上的任何类 ,它必须驻留在相应的文件夹层次结构中,并且根文件夹必须包含在构buildpath中。 这里是一个例子:
- 类是… / someDir / foo / bar / MyClass.class中的 foo.bar.MyClass
- 在您的Eclipse项目中,添加一个任意名称为aClassDir的文件夹,该文件链接到… / someDir。
- 将该链接的文件夹添加到项目的“生成path”中。
- 使用“导航器视图”浏览并打开“类文件编辑器”中的.class文件。 (注意:文件系统上的Plain .class文件隐藏在Package Explorer视图中。)
注意:如果someDir是您项目的子文件夹,您可以跳过第2步(链接文件夹)并将其直接添加到构buildpath中。 但是,如果它是Eclipse项目的编译器输出文件夹,则不起作用。
PS我希望我可以双击任何项目子文件夹中的任何.class文件,而不需要在类path中。
简单的事情,我做了让它工作:
进入eclipse>窗口>首选项
(可选)在search框“文件”中键入以帮助修剪选项树。 去了General> Editors>文件关联。
点击“.class”types。 下面有两位编辑,我点击了“Class File Editor” – 一个带有JD图标的编辑器,点击右边的“Default”button。
完成。 现在所有的class级都属于我们。
我使用jadeclipse,因为它不能在3.6 / 3.7 eclipse中工作
更新网站http://webobjects.mdimension.com/jadclipse/3.6/
Intallation http://5thcross.wordpress.com/2009/05/20/installing-jadclipse-in-eclipse/
Eclipse 版本3.x和4.x的 JAD Decomplier插件。
更新站点: http : //feeling.sourceforge.net/update
脚步:
- 打开Eclipse IDE。
- 点击帮助 – >安装新软件
- 粘贴到URL上面,并将名称命名为JAD。
- selectEclipse类反编译器
- 点击Next并接受协议
- 安装它。
- 重新启动Eclipse并立即检查。
如果您需要反编译独立jar,请使用(JD-Eclipse的)相同的autor来尝试JD-GUI。 这是一个独立的应用程序(不需要日食)。 它可以打开* .class和* .jar文件。 有趣的是,它需要安装.Net(就像JD-Eclipse一样),但除此之外就像一个魅力。
在这里find它:
问候,
我做了1,2,3和7的步骤,我把类文件的文件夹放在项目的构buildpath(右键单击,属性,Java构buildpath,库,添加类文件夹,创build新文件夹,高级>> ,链接到文件系统中的文件夹,浏览…),然后重新启动eclipse。
在Juno,Kepler和Lunatesting之后,我发现JD只能用于构buildpath上的* .class文件 。
- 将jar添加为现有项目的lib
- 转到首选项 – >常规 – >
Class File Editor
>文件关联,将*.class without source
Class File Editor
*.class without source
文件设置为Class File Editor
在Eclipse中添加Java Decompiler的步骤:
- 打开Eclipse IDE。
- 点击Help-> Eclipse Marketplace Wizard
- 在“search”选项卡中findJD(JD是关键字以获取Eclipse类反编译器)
- selectEclipse类反编译器
- 点击安装。
- 重新启动Eclipse并检查
它应该适用于所有版本的eclipse,即使在Spring工具套装(STS)中也是如此。 这是步骤
转到URl 关注下载链接或点击下面的链接直接下载点击这里下载
下载JD-Eclipse
。 下载并解压JD-Eclipse更新站点,
启动Eclipse,
点击“帮助>安装新软件…”,
点击button“添加…”添加一个新的存储库,
input“JD-Eclipse更新站点”并select本地站点目录,
select提取的文件夹并给出任何名称。 我给了JDA
。 并点击确定。
选中“Java Decompiler Eclipse Plug-in”,
接下来,接下来…并重新启动Eclipse。
只需从JD页面下载该网站即可。 我能够从eclipse的isntalled软件部分的本地站点进行安装。