MyEclipse10.0安装jad反编译插件
1.下载反编译工具jad(下面提供下载)
将下载下来的jadstar158.zip解压缩,将jad.exe文件放入jdk安装目录下
如:C:\Program Files\Java\jdk1.6.0_20\bin
2.下载eclipse反编译插件net.sf.jadclipse_3.3.0.jar(下面提供下载)
3.将net.sf.jadclipse_3.3.0.jar 放入MyEclipse安装目录下,
如 :安装目录\Genuitec\dropins下 没有dropins,新建之,然后在dropins中新建features文件夹和plugins文件夹,将net.sf.jadclipse_3.3.0.jar拷贝到plugins中,然后新建java工程,运行以下代码(替换其中最后的代码,你电脑反编译插件所在的实际位置):
- import java.io.File;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * MyEclipse10.0 插件配置代码生成器
- *
- *
- */
- public class CreatePluginsConfig
- {
- public CreatePluginsConfig()
- {
- }
- public void print(String path)
- {
- List<String> list = getFileList(path);
- if (list == null)
- {
- return;
- }
- int length = list.size();
- for (int i = 0; i < length; i++)
- {
- String result = "";
- String thePath = getFormatPath(getString(list.get(i)));
- File file = new File(thePath);
- if (file.isDirectory())
- {
- String fileName = file.getName();
- if (fileName.indexOf("_") < 0)
- {
- print(thePath);
- continue;
- }
- String[] filenames = fileName.split("_");
- String filename1 = filenames[0];
- String filename2 = filenames[1];
- result = filename1 + "," + filename2 + ",file:/" + path + "\\"
- + fileName + "\\,4,false";
- System.out.println(result);
- } else if (file.isFile())
- {
- String fileName = file.getName();
- if (fileName.indexOf("_") < 0)
- {
- continue;
- }
- int last = fileName.lastIndexOf("_");// 最后一个下划线的位置
- String filename1 = fileName.substring(0, last);
- String filename2 = fileName.substring(last + 1, fileName
- .length() - 4);
- result = filename1 + "," + filename2 + ",file:/" + path + "\\"
- + fileName + ",4,false";
- System.out.println(result);
- }
- }
- }
- public List<String> getFileList(String path)
- {
- path = getFormatPath(path);
- path = path + "/";
- File filePath = new File(path);
- if (!filePath.isDirectory())
- {
- return null;
- }
- String[] filelist = filePath.list();
- List<String> filelistFilter = new ArrayList<String>();
- for (int i = 0; i < filelist.length; i++)
- {
- String tempfilename = getFormatPath(path + filelist[i]);
- filelistFilter.add(tempfilename);
- }
- return filelistFilter;
- }
- public String getString(Object object)
- {
- if (object == null)
- {
- return "";
- }
- return String.valueOf(object);
- }
- public String getFormatPath(String path)
- {
- path = path.replaceAll("\\\\", "/");
- path = path.replaceAll("//", "/");
- return path;
- }
- public static void main(String[] args)
- {
- /*替换成你的插件的安装目录*/
- String plugin = "D:\\MyEclipse 10\\MyEclipse 10\\dropins\\plugins";
- new CreatePluginsConfig().print(plugin);
- }
- }
4.重启MyEclipse,配置 jadclipse
在Eclipse 的Windows—> Perferences—>General->Editors->File Associations 中修改“*.class”默认关联的编辑器为“JadClipse Class File Viewer”。如果没有*.class,则点击“add"增加一个。
安装设置完毕,可以双击class文件。
资源下载地址:jadstar158.zip (233 KB)
net.sf.jadclipse_3.3.0.jar (44 KB)
如果遇到如下错误,解决方式:
eclipse中添加jad插件
1. 下载jad: http://www.softpedia.com/progDownload/JAD-Download-85911.html
下载后, 将解压后的jad.exe放到某个目录下, 如: D:java/jad.exe(后面会用到这个路径)
2. 下载jadClipse插件: http://sourceforge.net/projects/jadclipse/files/
将解压后的jar文件放到Eclipse的plugins子目录下
3. 重启eclipse
4. 配置JadClipse:
打开Windows ->Preferences -> Java -> JadClipse选项, 在path to decomplier: 文本框中写入D:\java\jad.exe(先前下载jad.exe的路径)
然后,点击确定, 重启eclipse即可完成jad插件的添加
另外, 出现如下问题, 多半是JadClipse没有配置好, 按上述步骤配置即可解决问题.
/*jadclipse*/
/*
DECOMPILATION REPORT
Decompiled from: D:\workspace\MyEclipse 8.5\BeanUtilsTest\lib\commons-beanutils-1.8.3.jar
Total time: 3 ms
Jad reported messages/errors:
Exit status: 0
Caught exceptions:
java.io.IOException: Cannot run program "D:\java" (in directory "C:\Users\administrator\.net.sf.jadclipse\1372683520891"): CreateProcess error=5, ¾ܾø·Ã
at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
at java.lang.Runtime.exe*(Runtime.java:593)
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:342)
at org.eclipse.ui.internal.WorkbenchPage$3.run(WorkbenchPage.java:632)
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:621)
at org.eclipse.ui.internal.WorkbenchPage.setActivePart(WorkbenchPage.java:3527)
at org.eclipse.ui.internal.WorkbenchPage.activate(WorkbenchPage.java:614)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2869)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2762)
at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2754)
at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2705)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2701)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2685)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2676)
at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:374)
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.internal.ui.javaeditor.JavaElementHyperlink.open(JavaElementHyperlink.java:74)
at org.eclipse.jface.text.hyperlink.HyperlinkManager.mouseUp(HyperlinkManager.java:406)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:207)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3910)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3503)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
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:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: java.io.IOException: CreateProcess error=5, ¾ܾø·Ã
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
at java.lang.ProcessImpl.start(ProcessImpl.java:30)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:452)
... 54 more
*/
MyEclipse10.0安装jad反编译插件的更多相关文章
- myeclipse安装jad反编译插件
有时候想深入底层看jar包封装的源代码,但是打不开.这就需要配置反编译插件: 1:准备原材料 jad.exe + net.sf.jadclipse_3.3.0.jar 下载目录: jad.exe : ...
- myeclipse2014安装jad反编译插件
myeclipse上默认不能查看class文件,需要查看的话安装反编译插件 安装步骤: 准备图中框里的两个文件 1. [net.sf.jadclipse_3.3.0.jar]文件拷贝到如下路径([D: ...
- Eclipse安装jad反编译插件(在线安装)
Help→Eclipse Marketplace→Find→jad 然后等安装完成重启eclipse即可
- myeclipse和eclipse安装Java反编译插件
为myeclipse和eclipse安装Java反编译插件 插件所需包 1.解压jad1.5.8g.zip.将jad.exe放到jre的bin目录下,下载地址: http://ishare.ia ...
- Eclipse如何安装JD-Eclipse反编译插件
一.Eclipse在线安装JD-Eclipse反编译插件 1.在eclipse的help—>Install New Software...中添加新软件开发,添加它的源: name:jd-ecli ...
- Eclipse安装JD-Eclipse反编译插件成功看源码
Eclipse安装JD-Eclipse反编译插件 转载 2017年12月24日 15:19:27 http://heavengate.blog.163.com/blog/static/202381 ...
- eclipse在线安装jd反编译插件
eclipse在线安装jd反编译插件地址 http://jd.benow.ca/jd-eclipse/update
- Eclipse 4.2 安装Java反编译插件
在eclipse下安装反编译插件可以直接查看 .class 文件对应的java源码. 反编译插件有 jdeclipse 和 jadeclipse. (1) jdeclipse http://www.d ...
- Eclipse下配置tomcat且使用eclipse开启debug模式,集成JAD反编译插件
Eclipse运行Tomcat的2种方式 eclipse启动Tomcat服务输入http://localhost:8080/报404解决方法 Eclipse 中Tomcat 启动 与直接启动Tomca ...
随机推荐
- 导航 - 利用系统自带的App导航
导航: 可以将需要导航位置丢给系统自带的App进行导航 发送网络请求到公司服务器, 获取导航数据, 自己手动绘制导航 利用三方SDK进行导航(百度) #import "ViewControl ...
- 预处理命令#define #undef #if #endif 的基本用法
C#的预处理命令其实还是蛮有用的,但是真正使用过得人不多,这个介绍一下平时用的比较多的预处理命令中的几个:#define,#undef ,#if,#endif.除此之外还有一些预处理命令#warnin ...
- bzoj 2244: [SDOI2011]拦截导弹 cdq分治
2244: [SDOI2011]拦截导弹 Time Limit: 30 Sec Memory Limit: 512 MBSec Special JudgeSubmit: 237 Solved: ...
- Uva10766 Organising the Organisation
题目链接戳这里 基尔霍夫矩阵裸题.构建基尔霍夫矩阵(度数矩阵-邻接矩阵),求他的任意\(n-1\)阶主子式的绝对值即为答案. 这题开始用java写,结果BigInteger太慢Tle了. 后来用c++ ...
- apache asp.net
http://www.apache.org/dist/httpd/ http://server.it168.com/server/2005-10-11/20051011027201.shtml htt ...
- String 类型的相关转换
题目: what is the result of the expression 5.4+"3.2"? 答案: 当一个运算数为原始数据类型,另外一个为字符串时,则基本数据类型会转化 ...
- HDU 2487 Ugly window
这是切的很痛苦的一道题,自己测试了很多样例却终究不过,中间也做了诸多修改,后来无奈去网上看题解,发现遗漏了一种情况,就是两个窗口可能边框都能看见,但是一个嵌套在另一里面,而我判定是不是 “top wi ...
- 李洪强iOS开发Swift篇—06_流程控制
李洪强iOS开发Swift篇—06_流程控制 一.swift中的流程控制 Swift支持的流程结构如下: 循环结构:for.for-in.while.do-while 选择结构:if.switch 注 ...
- No modifications are allowed to a locked ParameterMap
错误:java.lang.IllegalStateException: No modifications are allowed to a locked ParameterMap at org.apa ...
- Web Development Terms
I've come across lots of terms while learning web development. I'm feeling myself overwhelmed. Here ...