There used to be a time where everyone's decompiler of choice was jad.
But jad is dead, and it was not Open Source anyway, so there must be something better, right?
Current winner
Jdec is the best Open Source decompiler I have found so far.It is not perfect though: There is no community, and there are bugs, none of which has got fixed since 2007. Also, its website looks very unprofessional.
Challengers
- JReversePro shows signs of activity but has had no release since 2002
- JODE has had no release since 2004
- dcompiler has had no release since 2002
Need work
- Dava seems to be a thesis project rather than a programming tool.
- javap only shows assembly-level code
- Soot is not really a decompiler
Out of Competition
Those ones might be usable but they are not Open Source:- Fernflower is not maintained and not open source. Its author Stiver told me "Unfortunately I can't release it under GPL right now, because there are still some legal questions to be solved. However if you are representing a well established company or an R&D institute, an exception would be possible."
- Java Decompiler (JD) is not open source
- DJ Java Decompiler is not open source
- Cavaj is not open source
Nicolas Raoul