Eclipse Class Decompiler插件更新站点: http://feeling./update
离线安装包下载地址一:http://feeling./downloads/org.sf.feeling.decompiler_1.0.3.zip
离线安装包下载地址二:http://www./Files/cnfree/org.sf.feeling.decompiler_1.0.3.zip
本插件仅支持Windows,Linux,Macosx操作系统。
直接使用Eclipse进行更新,支持Eclipse 3.x, 4.x,不依赖任何其他插件,直接勾选更新插件即可。

下图为Eclipse Class Decompiler的首选项页面,可以选择缺省的反编译器工具,并进行反编译器的基本设置。缺省的反编译工具为JD-Core,JD-Core更为先进一些,支持泛型、Enum、注解等JDK1.5以后才有的新语法。

首选项配置选项:
1.重用缓存代码:只会反编译一次,以后每次打开该类文件,都显示的是缓存的反编译代码。
2.忽略已存在的源代码:若未选中,则查看Class文件是否已绑定了Java源代码,如果已绑定,则显示Java源代码,如果未绑定,则反编译Class文件。若选中此项,则忽略已绑定的Java源代码,显示反编译结果。
3.显示反编译器报告:显示反编译器反编译后生成的数据报告及异常信息。
4.使用Eclipse代码格式化工具:使用Eclipse格式化工具对反编译结果重新格式化排版,反编译整个Jar包时,此操作会消耗一些时间。
5.使用Eclipse成员排序:使用Eclipse成员排序对反编译结果重新格式化排版,反编译整个Jar包时,此操作会消耗大量时间。
6.以注释方式输出原始行号信息:如果Class文件包含原始行号信息,则会将行号信息以注释的方式打印到反编译结果中。
7.根据行号对齐源代码以便于调试:若选中该项,插件会采用AST工具分析反编译结果,并根据行号信息调整代码顺序,以便于Debug过程中的单步跟踪调试。
8.设置类反编译查看器作为缺省的类文件编辑器:默认为选中,将忽略Eclipse自带的Class Viewer,每次Eclipse启动后,默认使用本插件提供的类查看器打开Class文件。
插件提供了系统菜单,工具栏,当打开了插件提供的类反编译查看器后,会激活菜单和工具栏选项,可以方便的进行首选项配置,切换反编译工具重新反编译,以及导出反编译结果。



打开项目路径下的Class文件,如果设置类反编译查看器为缺省的查看器,直接双击Class文件即可,如果没有设置为缺省查看器,可以使用右键菜单进行查看。

Eclipse Class Decompiler插件也提供了反编译整个Jar文件或者Java包的反编译。该操作支持Package Explorer对包显示布局的操作,如果是平铺模式布局,则导出的源代码不包含子包,如果是层级模式布局,则导出选中的包及其所有的子包。


评论
org.sf.feeling.decompiler.feature.group [1.0.2.201210280126] cannot be installed in this environment because its filter is not applicable. 回复 更多评论
MyEclipse加上启动参数-clean启动,这是Eclipse Update的bug导致的。
回复 更多评论
我想请问,这个还要设置吗,比如安装Jad?如何设置? 回复 更多评论
debug变量,需要你的jar的编译支持变量表,但是一般ant默认编译是不支持变量表的,就会出现你的问题,需要一定的技巧来解决,比如直接访问方法的参数,看参数的内部结构。 回复 更多评论
老师,关于解决的技巧,能否再详细点呢。能提供相应的关键词,放在在google上搜索就好。多谢,多谢。 回复 更多评论
已经用的是最新版的jd-core了,最后一次更新是2009年……
一般来说不会出现属性都反编译不出来的情况啊。 回复 更多评论
接着多手卸载了1.02,重启,再装1.03,然后就是启动不了了,有没有-clear参数都不行。系统win8 x64.
看不懂错误信息,估计这段给你有用。
-------------------------------------------------------
siginfo: ExceptionCode=0xc0000005, writing address 0x00000000
...
Stack: [0x37e10000,0x37f10000], sp=0x37f0f9d8, free space=1022k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [ntdll.dll+0x61255]
C [ntdll.dll+0x4f489]
C [MSVCR71.dll+0x3593]
C [zip.dll+0x784d]
J java.util.zip.ZipFile.close()V
j org.eclipse.osgi.baseadaptor.bundlefile.ZipBundleFile.close()V+56
j org.eclipse.osgi.baseadaptor.bundlefile.MRUBundleFileList.dispatchEvent(Ljava/lang/Object;Ljava/lang/Object;ILorg/eclipse/osgi/baseadaptor/bundlefile/BundleFile;)V+29
j org.eclipse.osgi.baseadaptor.bundlefile.MRUBundleFileList.dispatchEvent(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V+15
J org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(Ljava/util/Set;Lorg/eclipse/osgi/framework/eventmgr/EventDispatcher;ILjava/lang/Object;)V
j org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run()V+26
v ~StubRoutines::call_stub
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J java.util.zip.ZipFile.close(J)V
J java.util.zip.ZipFile.close()V
j org.eclipse.osgi.baseadaptor.bundlefile.ZipBundleFile.close()V+56
j org.eclipse.osgi.baseadaptor.bundlefile.MRUBundleFileList.dispatchEvent(Ljava/lang/Object;Ljava/lang/Object;ILorg/eclipse/osgi/baseadaptor/bundlefile/BundleFile;)V+29
j org.eclipse.osgi.baseadaptor.bundlefile.MRUBundleFileList.dispatchEvent(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V+15
J org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(Ljava/util/Set;Lorg/eclipse/osgi/framework/eventmgr/EventDispatcher;ILjava/lang/Object;)V
j org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run()V+26
v ~StubRoutines::call_stub
--------------------------------------------- 回复 更多评论
These are the errors that were encountered:
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libapr-1.dll: %1 不是有效的 Win32 应用程序。
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libapriconv-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libaprutil-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_subr-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_delta-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_diff-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_wc-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_fs-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_repos-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_ra-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvn_client-1.dll: Can't find dependent libraries
D:\Program Files\MyEclipse\MyEclipse 10\configuration\org.eclipse.osgi\bundles\1186\1\.cp\libsvnjavahl-1.dll: Can't find dependent libraries
no svnjavahl-1 in java.library.path
no svnjavahl in java.library.path
java.library.path = D:\Program Files\MyEclipse\MyEclipse 10;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;D:/Program Files/MyEclipse/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/jre/bin/client;D:/Program Files/MyEclipse/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/jre/bin;D:/Program Files/MyEclipse/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/jre/lib/i386;c:\program files (x86)\imagemagick-6.3.9-q16;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files\TortoiseSVN\binTortoiseSVN\bin;D:\Program Files\Java\jdk1.7.0_06/bin;D:\Android\android-sdk\tools;C:\Program Files (x86)\Common Files\TTKN\Bin 回复 更多评论
Failed to load JavaHL Library.
这是SVN的Native库发生错误……和反编译插件无关。 回复 更多评论
给你发了评论后它自己又能启动了,但是不够一分钟又关,接着再次启动直接把反编译插件删掉,恢复正常。
然后不用配置这种安装方式安装,直接把压缩包扔到MyEclipse 10\dropins里面,启动,正常。
最后发现org.eclipse.osgi\bundles\1186\1\.cp\libapr-1.dll不知道咋回事的竟然是0字节,对他没辙直接删掉,现在貌似一切正常了。
谢谢你的插件啦!赞一个! 回复 更多评论