如何在Eclipse Helios中运行Java Decompiler / JD / JD-Eclipse

时间:2010-12-22 17:50:58

标签: java eclipse decompiler helios jd-eclipse

Java Decompiler(JD)通常被推荐为优秀的Java Decompiler。 JD-Eclipse是JD的Eclipse插件。

我在几台不同的机器上遇到问题,无法运行插件。每当我尝试打开.class文件时,标准的“未找到源”编辑器都会显示,显示低级字节码反汇编,而不是反编译器所期望的Java源输出。

http://java.decompiler.free.fr/?q=jdeclipse中的安装文档不错,但在进行故障排除时非常模糊。

打开此问题以收集更多信息:在Eclipse Helios中运行JD之前您遇到了哪些问题?解决方案是什么?

14 个答案:

答案 0 :(得分:36)

这是我遇到的东西:

1)RTFM并安装提到的“Microsoft Visual C ++ 2008 SP1 Redistributable Package” 在安装文档的顶部。我最初错过了这个,因为Helios指令结束了。

2)在打开类文件之前关闭所有打开的编辑器选项卡。否则,很容易从之前的尝试中获得过时的编辑器选项卡。

3)在“Java类文件编辑器”(而不是“Java类文件查看器”)中打开类文件。使用上下文菜单中的“打开方式”来获得正确的编辑器。如果对结果感到满意,请将其设置为文件关联设置中的默认编辑器,在Window / Preference General / Editors / File Associations中选择* .class以使用“Java类文件编辑器”打开。

4)This guy建议从Helios更新站点安装Equinox SDK。我做了,但我不确定这是否真的有必要。有人知道吗?

5)如果您要查看的类文件位于Eclipse Java项目中,则它们必须位于项目的构建路径中。否则,异常(“不在构建路径中”)将显示在Eclipse错误日志中,并且反编译将失败。我将类文件作为库/类文件夹添加到构建路径中。

6)从Windows资源管理器中拖放类文件或使用文件/打开文件打开它...将无效。在我的测试中,我给出了“无法打开编辑器:类文件查看器无法处理给定的输入('org.eclipse.ui.ide.FileStoreEditorInput')。”错误。无论如何,这可能是错误的编辑器,见3)。

7)在基本上运行插件后,一些文件仍然不会因为未知原因而反编译。关闭所有选项卡,重新启动Helios并再次尝试后,此消失。

答案 1 :(得分:12)

让它在Eclipse Juno中运行 - 我不得不做一些额外的步骤。

一般 - >编辑 - >文件协会

  1. 选择" * .class"并标记"类文件编辑器"默认
  2. 选择" *。没有来源的课程" - >添加 - > "类文件编辑器" - >将其设为默认
  3. 重启eclipse

答案 2 :(得分:6)

我正在使用Eclipse 3.7 Indigo和Windows 7 64位:

我所做的是按照网站的建议安装Microsoft Visual C ++ 2008 SP1可再发行组件包,并由@Universalspezialist提醒。

然后按照网站http://java.decompiler.free.fr/?q=jdeclipse

中的说明安装插件

转到首选项,然后找到“文件关联” 单击* .class,然后将“类文件编辑器”设置为默认值。

也许重启Eclipse? (我这样做了,但我不确定是否有必要)

答案 3 :(得分:6)

我做的很简单,让它运转起来:

进入日食>窗口>首

(可选)在搜索框“file”中键入以帮助修剪选项树。 去一般>编辑>文件关联。

点击“.class”类型。下面有2位编辑,我点击“类文件编辑器” - 带有JD图标的编辑器,点击右侧的“默认”按钮。

完成。 现在你所有的班级都属于我们。

答案 4 :(得分:6)

JD-eclipse插件0.1.3只能反编译从类路径/构建路径可见的.class文件。

如果您的类位于.jar 中,您可以将此jar作为另一个库添加到Build Path中。从Package Explorer中浏览新库并在类文件编辑器中打开该类。

如果要反编译文件系统上的任何类,它必须驻留在相应的文件夹层中,并且根文件夹必须包含在构建路径中。这是一个例子:

  1. Class是foo.bar.MyClass in ... / someDir / foo / bar / MyClass.class
  2. 在Eclipse项目中,添加一个名为aClassDir的文件夹,该文件夹链接到... / someDir。
  3. 将该链接文件夹添加到项目的构建路径中。
  4. 使用导航器视图在类文件编辑器中导航和打开.class文件。 (注意:文件系统上的普通.class文件隐藏在Package Explorer视图中。)
  5. 注意:如果someDir是项目的子文件夹,您可以跳过第2步(链接文件夹)并将其直接添加到构建路径。但是,如果它是Eclipse项目的编译器输出文件夹,则不起作用。

    P.S。我希望我可以双击任何项目子文件夹中的任何.class文件,而无需在类路径中使用它...

答案 5 :(得分:3)

我使用jadeclipse,因为它无法在3.6 / 3.7 eclipse中工作

更新网站 http://webobjects.mdimension.com/jadclipse/3.6/

安装纸 http://5thcross.wordpress.com/2009/05/20/installing-jadclipse-in-eclipse/

答案 6 :(得分:3)

Eclipse 版本3.x和4.x的JAD Decomplier插件。

更新网站:http://feeling.sourceforge.net/update

<强>步骤:

  1. 打开Eclipse IDE。
  2. 点击“帮助” - >“安装新软件”
  3. 粘贴上面的网址,并将名称命名为JAD。
  4. 选择Eclipse Class Decompiler
  5. 点击下一步并接受协议
  6. 安装它。
  7. 重启Eclipse并立即检查。

答案 7 :(得分:3)

在对Juno,Kepler和Luna进行测试后,我发现JD仅适用于构建路径 * .class文件

  1. 将jar添加为现有项目的lib
  2. 转到首选项 - &gt;常规 - &gt;编辑器 - &gt;文件关联,将*.class without source设置为Class File Editor并带有一个杯子图标

答案 8 :(得分:3)

即使在Spring工具套装(STS)中它也适用于所有版本的eclipse。 这是步骤

转到URl Follow The link to download或点击下面的链接直接下载 Click Here to download

下载JD-Eclipse。 下载并解压缩JD-Eclipse更新站点

启动Eclipse,

点击&#34;帮助&gt;安装新软件......&#34;,

点击按钮&#34;添加...&#34;添加新的存储库,

输入&#34; JD-Eclipse更新站点&#34;并选择本地站点目录,

enter image description here

选择提取的文件夹并提供任何名称。我给了JDA。 然后单击“确定”。

enter image description here

检查&#34; Java Decompiler Eclipse插件&#34;,

enter image description here

接下来,接下来,接下来......并重启Eclipse。

答案 9 :(得分:2)

如果您需要反编译独立jar,请使用相同的autor(JD-Eclipse)尝试JD-GUI。它是一个独立的应用程序(不需要eclipse)。它可以打开* .class和* .jar文件。有趣的是它需要.Net安装(确实像JD-Eclipse一样),但其他工作方式就像魅力一样。

在此处找到它:

http://jd.benow.ca/

此致

答案 10 :(得分:1)

我做了第1步,第2步,第3步和第7步。我把带有类文件的文件夹放在项目构建路径中(右键单击,属性,java构建路径,库,添加类文件夹,创建新文件夹,高级&gt;&gt ;,链接到文件系统中的文件夹,浏览,...)然后重启eclipse。

答案 11 :(得分:1)

在Eclipse中添加Java Decompiler的步骤:

  1. 打开Eclipse IDE。
  2. 点击帮助 - &gt; Eclipse Marketplace向导
  3. 在“搜索”选项卡中,找到JD(JD是获取Eclipse类反编译器的关键字)
  4. 选择 Eclipse类反编译器
  5. 点击安装。
  6. 重启Eclipse并检查

答案 12 :(得分:0)

只需从JD页面下载该站点即可。我能够从eclipse的isntalled软件部分的本地站点安装。

答案 13 :(得分:0)

  1. 下载JD-Eclipse更新站点( github.com/java-decompiler/jd-eclipse
  2. 启动Eclipse,

  3. 单击“帮助>安装新软件...”,

  4. 单击“添加...”按钮以添加新的存储库,

  5. 输入“ JD-Eclipse更新站点”并选择本地站点目录,

  6. 选中“ Java Decompiler Eclipse插件”,

  7. 下一步,下一步,下一步...,然后重新启动Eclipse。