Question

I have installed the JAD plugin for eclipse. I just downloaded the jar and put it in eclipse plugin folder and then downloaded the executable files from here.

After extracting the zip file, I see now jad.exe and double clicked it. I am not sure if any thing wrong in the installation step, but in eclipse I see jadeclispe in eclipse editor.

When I open a class file, I see the following error

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

Can some one tell what is missing here to make it work?

Was it helpful?

Solution

How to install JAD for use with Eclipse (in Windows)

  1. Download the executable (.exe) from here: http://www.softpedia.com/get/Programming/Debuggers-Decompilers-Dissasemblers/JAD.shtml

    Save the file (the README too, it has good instructions) somewhere in the file system, for example in C:\Program Files\JadDecompiler\

  2. Download the JAD Eclipse plugin (.jar) from http://sourceforge.net/projects/jadclipse/

  3. Copy the downloaded jar file to the plugins folder of Eclipse, for example C:\dev\eclipse\plugins

  4. Restart Eclipse (for the plugin to take effect)

  5. In Eclipse, Click Window –> Preferences –> Java –> Jadclipse and enter for example:

JadClipse settings

Done.

Now you’ll be able to see any source that is attached but in compressed (jar) format.

OTHER TIPS

Hey just to add to ceiroa's answer steps. Once you done with all steps, start eclipse with -clean command otherwise jad will not work as expected. I faced that issue, so wanted to add. eclipse -clean

Either the plugin has a form where you can enter the address of the executable or you are going to have to put it on the path. Remember to restart eclipse if you choose to change the path in the registry.

I have used Jad a number of times over the years. I find the easiest way is to use it is to unzip the jar and use jad from the command line to decompile everything. I then rename the extensions from jad to java and go from there. That way I can rename variable and pull code as I need. I have even gone so far as to create a project so I can link references between files. I find this faster and more useful than the plugins - peculiar for someone who has been an IDE fan and would normally prefer that approach to command line.

Jaceclipse plugin error for 32 bit eclipse -

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

Solution: Install pack Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)

It will solve your problem ..

I wanna add some more step in ceiroa's answer steps. Once you completed with all steps.if you are using spring tool suite (STS) instead of eclipse.

Just change in spring tool suite file.

-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
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top