4

我已经为 Eclipse 安装了 JAD 插件。我刚刚下载了 jar 并将其放在 eclipse 插件文件夹中,然后从这里下载了可执行文件。

解压 zip 文件后,我现在看到 jad.exe 并双击它。我不确定安装步骤中是否有任何问题,但在 Eclipse 中,我在 Eclipse 编辑器中看到了jadeclispe。

当我打开一个类文件时,我看到以下错误

java.io.IOException:无法运行程序“jad”(在目录“C:\Users\sgudla
.net.sf.jadclipse\1341954004841"): CreateProcess error=2, 系统找不到指定的文件
    在 java.lang.ProcessBuilder.start(未知来源)
    在 java.lang.Runtime.exec(未知来源)
    在 net.sf.jadclipse.JadDecompiler.decompile(JadDecompiler.java:160)
    在 net.sf.jadclipse.JadDecompiler.decompileFromArchive(JadDecompiler.java:217)
    在 net.sf.jadclipse.JadclipseSourceMapper.findSource(JadclipseSourceMapper.java:150)
    在 net.sf.jadclipse.JadclipseSourceMapper.findSource(JadclipseSourceMapper.java:83)
    在 net.sf.jadclipse.JadclipseClassFileEditor.doOpenBuffer(JadclipseClassFileEditor.java:87)
    在 net.sf.jadclipse.JadclipseClassFileEditor.doSetInput(JadclipseClassFileEditor.java:45)
    在 net.sf.jadclipse.JadclipseActionBarContributor.setActiveEditor(JadclipseActionBarContributor.java:87)
    在 org.eclipse.ui.internal.EditorActionBars.partChanged(EditorActionBars.java:343)
    在 org.eclipse.ui.internal.WorkbenchPage$3.run(WorkbenchPage.java:635)
    在 org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    在 org.eclipse.core.runtime.Platform.run(Platform.java:888)
    在 org.eclipse.ui.internal.WorkbenchPage.activatePart(WorkbenchPage.java:624)
    在 org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:3533)
    在 org.eclipse.ui.internal.WorkbenchPage.internalActivate(WorkbenchPage.java:617)
    在 org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:589)
    在 org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2875)
    在 org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2768)
    在 org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2760)
    在 org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2711)
    在 org.eclipse.swt.custom.BusyIndi​​cator.showWhile(BusyIndi​​cator.java:70)
    在 org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2707)
    在 org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2691)
    在 org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2682)
    在 org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:378)
    在 org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:178)
    在 org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:229)
    在 org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:208)
    在 org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:274)
    在 org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:250)
    在 org.eclipse.jdt.internal.ui.navigator.OpenAndExpand.run(OpenAndExpand.java:49)
    在 org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:221)
    在 org.eclipse.ui.navigator.CommonNavigatorManager$3.open(CommonNavigatorManager.java:185)
    在 org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48)
    在 org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:845)
    在 org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    在 org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
    在 org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
    在 org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:843)
    在 org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1131)
    在 org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:462)
    在 org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1235)
    在 org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:264)
    在 org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:258)
    在 org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:298)
    在 org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    在 org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
    在 org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
    在 org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
    在 org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629)
    在 org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593)
    在 org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427)
    在 org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670)
    在 org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    在 org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663)
    在 org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    在 org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
    在 org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    在 org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    在 org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    在 org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
    在 org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    在 sun.reflect.NativeMethodAccessorImpl.invoke(未知来源)
    在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)
    在 java.lang.reflect.Method.invoke(未知来源)
    在 org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
    在 org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
    在 org.eclipse.equinox.launcher.Main.run(Main.java:1407)
    在 org.eclipse.equinox.launcher.Main.main(Main.java:1383)
原因:java.io.IOException: CreateProcess error=2, 系统找不到指定的文件
    在 java.lang.ProcessImpl.create(本机方法)
    在 java.lang.ProcessImpl.(未知来源)
    在 java.lang.ProcessImpl.start(未知来源)
    ... 71 更多

有人可以告诉这里缺少什么以使其正常工作吗?

4

5 回答 5

17

如何安装 JAD 以与 Eclipse 一起使用(在 Windows 中)

  1. 从这里下载可执行文件 (.exe):http: //www.softpedia.com/get/Programming/Debuggers-Decompilers-Dissasemblers/JAD.shtml

    将文件(README 也是,它有很好的说明)保存在文件系统的某个位置,例如 C:\Program Files\JadDecompiler\

  2. 从http://sourceforge.net/projects/jadclipse/下载 JAD Eclipse 插件 (.jar)

  3. 将下载的jar文件复制到Eclipse的plugins文件夹中,例如C:\dev\eclipse\plugins

  4. 重启Eclipse(使插件生效)

  5. 在 Eclipse 中,单击Window –> Preferences –> Java –> Jadclipse并输入例如:

JadClipse 设置

完毕。

现在您将能够看到任何附加的但以压缩(jar)格式的源。

于 2012-07-23T14:34:29.813 回答
1

嘿只是为了添加到 ceiroa 的答案步骤。完成所有步骤后,使用 -clean 命令启动 eclipse,否则 jad 将无法按预期工作。我遇到了这个问题,所以想补充一下。日食-清洁

于 2013-12-18T07:30:01.813 回答
0

插件有一个表单,您可以在其中输入可执行文件的地址,或者您必须将其放在路径上。如果您选择更改注册表中的路径,请记住重新启动 eclipse。

这些年来,我多次使用 Jad。我发现最简单的使用方法是解压缩 jar 并从命令行使用 jad 反编译所有内容。然后我将扩展名从 jad 重命名为 java 并从那里开始。这样我就可以根据需要重命名变量并提取代码。我什至创建了一个项目,以便可以链接文件之间的引用。我发现这比插件更快、更有用——对于那些一直是 IDE 粉丝并且通常更喜欢命令行方法的人来说是特有的。

于 2012-07-10T21:16:15.613 回答
0

32 位 eclipse 的 Jaceclipse 插件错误 -

错误:F:\eclipse\configuration\org.eclipse.osgi\431\0.cp\win32\x86\jd-eclipse.dll

解决方案:安装包 Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)

它会解决你的问题..

于 2015-05-24T09:41:35.813 回答
0

我想在 ceiroa 的回答步骤中添加更多步骤。完成所有步骤后。如果您使用的是 spring 工具套件 (STS) 而不是 eclipse。

只需更改弹簧工具套件文件即可。

-clean
-startup
plugins/org.eclipse.equinox.launcher_1.5.700.v20200207-2156.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1100.v20190907-0426
-product
org.springframework.boot.ide.branding.sts4
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
于 2020-05-02T19:55:39.920 回答