Transferred from: http://blog.csdn.net/superbeck/article/details/5189231
For programmers who use Java for many years, most of them should use the anti-compilation software more or less. After all, it's impossible that every package you use will provide perfect javadoc, and sometimes the code is easier to understand than Javadoc. Here are some of the anti-compilation software that I understand and their respective IDE plugin versions.
Introduction
There are now dozens of types of anti-compilation software in the industry. There are jad and other anti-compilation software developed based on Jad (Front End Plus, Mdejava, Decafe Pro, Cavaj java decompiler, DJ Java decompiler, NMI ' s Java Class Viewer and native Java source Code anti-compilation expert), as well as Jode, and Jcavaj Java Decompiler, BTJ (back to Java), JEdit's Javainsight plugin, developed with Jode as the core , and Dava, as well as the current author's most respected Java Decompiler.
In these anti-compilation software, the author used Jad,jode,java Decompiler and other software development based on these software such as Cavaj, Xiao Ying, as well as the Eclipse plug-in version of these software.
The Jad is a well-known anti-compilation engine developed using VC + +, and the performance is very fast; Jode is an open source anti-compilation engine developed using Java, and Java Decompiler seems to be a Java-developed anti-compilation software, And the three software has the corresponding Eclipse plug-in version.
Use effect comparison
I have used the above three software in eclipse.
Use the environment as: Eclipse Galileo,jad 1.5.8g + jadclipse 3.3.0,jodeeclipse 1.0.6,jd-eclipse 0.1.3.
The trial results are as follows:
Anti-compilation performance: Jad = = jode > Java decompiler
Anti-compile quality: Java decompiler > Jode >= jad
From a speed point of view, you will obviously feel the Java Decompiler slower, always show the anti-compiled code at a slower pace, and Jode and Jad are very fast, close to the speed of opening the source code.
From the quality of anti-compilation, it is undoubtedly the best Java decompiler. The most fundamental reason is that the latest version of Jad and Jode was released prior to JDK 5.0, so the features of JDK 5.0 and above are largely unsupported. The reason that Jode's anti-compilation effect is better than Jad is because Jad's eclipse plugin is not very useful, and the jar packages that you add can sometimes not be recompiled.
Use of plugins
The use of plug-ins, need a little attention.
Jode and Jd-eclipse are both installed directly and can be used, and jad needs to specify the path of the Jad.exe, and the Jad.exe file can be placed in the "%java_home%/bin" directory. Then find the Jad Settings window in eclipse in the following order, window---Preferences, open the Preferences window, then select Java---jadclipse, and make sure the Path to Decompiler: "The value is" Jad.exe ".
Among them, Jad and Jode also have some other IDE plug-in version, if necessary, you can go to SourceForge to search.
Summarize
If you are using JDK 5.0 and above, use Java Decompiler, after all, the effect is the most important. If you are using JDK 1.4, it is recommended to use Jode, if not used in eclipse, you can choose Jad, Complex command, you can achieve a lot of functions.
This article is a little introduction to the three anti-compilation software comparison results, so the specific use of the method can be seen in the articles in the resources.
Resources
JAD Official website: http://www.kpdus.com/jad . html (long time no update, download please use the following URL)
Jad Download: Http://www.varaneckas.com/jad
jadclipse:http://sourceforge.net/projects/jadclipse/
jode:http://sourceforge.net/projects/jode/
jodeeclipse:http://sourceforge.net/projects/jodeeclipse/
Java decompiler:http://java.decompiler.free.fr/
Introduction to the Java Anti-compilation plug-in summary: http://zhidao.baidu.com/question/79760697.html
Http://hi.baidu.com/darmn/blog/item/56678e7f14f81a0129388af7.html
Http://hi.baidu.com/zhangge9477/blog/item/adeced08c9663a3ae8248849.html