自己使用JadClipse插件反编译的软件是jad,这个软件的反编译能力真的很不怎么样,然后我还是选择了自己以前用的jd-gui
下面是反编译对比
jad反编译结果:
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
throws Exception
{
checkAndPrepare(request, response, this instanceof LastModified);
if(!synchronizeOnSession) goto _L2; else goto _L1
_L1:
javax.servlet.http.HttpSession session = request.getSession(false);
if(session == null) goto _L2; else goto _L3
_L3:
Object mutex = WebUtils.getSessionMutex(session);
Object obj = mutex;
JVM INSTR monitorenter ;
return handleRequestInternal(request, response);
obj;
JVM INSTR monitorexit ;
throw ;
_L2:
return handleRequestInternal(request, response);
}
下面是jd-gui反编译结果:
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
throws Exception {
// Delegate to WebContentGenerator for checking and preparing.
checkAndPrepare(request, response, this instanceof LastModified);
// Execute handleRequestInternal in synchronized block if required.
if (this.synchronizeOnSession) {
HttpSession session = request.getSession(false);
if (session != null) {
Object mutex = WebUtils.getSessionMutex(session);
synchronized (mutex) {
return handleRequestInternal(request, response);
}
}
}
return handleRequestInternal(request, response);
}
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Eclipse的反编译插件一直在用jad,感觉很不错。
刚下了个新版的eclipse,配置jad的时候发现要多设置个东西。
从头开始
环境介绍:
eclipse version:Kepler Release(其实是3.9)
jadClipse version:3.3(好久好久以前的版本了,估计是也没有什么好更新了)
1.下载jadClipse
http://sourceforge.net/projects/jadclipse/
2.将net.sf.jadclipse_3.3.0.jar 拷贝到eclipse的plugins目录下
3.设置jad的可执行文件路径和生成的临时文件路径
4.如果你发现进入class并没有被反编译,那么修改文件关联
注意,这里有两个.class的关联,可以直接修改第二个就是没有源代码的情况,Associated editors下添加一个编辑器,并且设置为默认的,如下图。
5.我之前下的一些eclipse并没有.class without source项,这时候就在.class 下添加jad的编辑器并且设置为默认。
6.如果你没有下载到jad.exe 或者jad.jar,附件中的压缩文件有这些东西。
http://tangmingjie2009.iteye.com/blog/1916992