我已经为eclipse安装了JAD插件。我刚刚下载了jar并将其放在eclipse插件文件夹中,然后从here下载了可执行文件。
解压缩zip文件后,我现在看到jad.exe并双击它。我不确定安装步骤是否有任何问题,但在eclipse中我在eclipse编辑器中看到了jadeclispe。
当我打开一个类文件时,我看到以下错误
java.io.IOException: Cannot run program "jad" (in directory "C:\Users\sgudla .net.sf.jadclipse\1341954004841"): CreateProcess error=2, The system cannot find the file specified at java.lang.ProcessBuilder.start(Unknown Source) at java.lang.Runtime.exec(Unknown Source) at net.sf.jadclipse.JadDecompiler.decompile(JadDecompiler.java:160) at net.sf.jadclipse.JadDecompiler.decompileFromArchive(JadDecompiler.java:217) at net.sf.jadclipse.JadclipseSourceMapper.findSource(JadclipseSourceMapper.java:150) at net.sf.jadclipse.JadclipseSourceMapper.findSource(JadclipseSourceMapper.java:83) at net.sf.jadclipse.JadclipseClassFileEditor.doOpenBuffer(JadclipseClassFileEditor.java:87) at net.sf.jadclipse.JadclipseClassFileEditor.doSetInput(JadclipseClassFileEditor.java:45) at net.sf.jadclipse.JadclipseActionBarContributor.setActiveEditor(JadclipseActionBarContributor.java:87) at org.eclipse.ui.internal.EditorActionBars.partChanged(EditorActionBars.java:343) at org.eclipse.ui.internal.WorkbenchPage$3.run(WorkbenchPage.java:635) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.runtime.Platform.run(Platform.java:888) at org.eclipse.ui.internal.WorkbenchPage.activatePart(WorkbenchPage.java:624) at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:3533) at org.eclipse.ui.internal.WorkbenchPage.internalActivate(WorkbenchPage.java:617) at org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:589) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2875) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2768) at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2760) at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2711) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2707) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2691) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2682) at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:378) at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:178) at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:229) at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:208) at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:274) at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:250) at org.eclipse.jdt.internal.ui.navigator.OpenAndExpand.run(OpenAndExpand.java:49) at org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:221) at org.eclipse.ui.navigator.CommonNavigatorManager$3.open(CommonNavigatorManager.java:185) at org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48) at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:845) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:843) at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1131) at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:462) at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1235) at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:264) at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:258) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:298) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified at java.lang.ProcessImpl.create(Native Method) at java.lang.ProcessImpl.(Unknown Source) at java.lang.ProcessImpl.start(Unknown Source) ... 71 more
有人可以告诉我们这里缺少什么让它起作用吗?
答案 0 :(得分:17)
从此处下载可执行文件(.exe):http://www.softpedia.com/get/Programming/Debuggers-Decompilers-Dissasemblers/JAD.shtml
在文件系统的某处保存文件(README,它有很好的说明),例如在C:\ Program Files \ JadDecompiler \
从http://sourceforge.net/projects/jadclipse/下载JAD Eclipse插件(.jar)
将下载的jar文件复制到Eclipse的plugins文件夹,例如C:\ dev \ eclipse \ plugins
重启Eclipse(使插件生效)
在Eclipse中,点击窗口 - >偏好 - > Java - > Jadclipse 并输入例如:
完成。
现在,您将能够以压缩(jar)格式查看任何附加的源。
答案 1 :(得分:1)
嘿,只是为了加入ceiroa的答案步骤。完成所有步骤后,使用-clean命令启动eclipse,否则jad将无法按预期工作。我遇到了这个问题,所以想补充一下。 eclipse -clean
答案 2 :(得分:0)
插件有一个表单,您可以在其中输入可执行文件的地址,或者您必须将其放在路径上。如果您选择更改注册表中的路径,请记住重新启动eclipse。
多年来,我多次使用过Jad。我发现最简单的方法是使用它解压缩jar并使用命令行中的jad来反编译所有内容。然后我将扩展从jad重命名为java并从那里开始。这样我可以根据需要重命名变量和拉代码。我甚至创建了一个项目,所以我可以链接文件之间的引用。我发现它比插件更快更有用 - 特别是对于那些曾经是IDE粉丝并且通常更喜欢这种方法的人来说。答案 3 :(得分:0)
32位日食的Jaceclipse插件错误 -
错误:F:\ eclipse \ configuration \ org.eclipse.osgi \ 431 \ 0.cp \ win32 \ x86 \ jd-eclipse.dll
解决方案: 安装包 Microsoft Visual C ++ 2008 SP1可再发行组件包(x86)
它会解决你的问题..
答案 4 :(得分:0)
我想在ceiroa的回答步骤中添加更多步骤。完成所有步骤后。如果您使用的是Spring工具套件(STS)而不是Eclipse。
只需更改spring工具套件文件即可。
-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