tanamonの稀に良く書く日記

KEEP CALM AND DRINK BEER

Jad(Javaの逆コンパイラ)で僕にもソースが見えるの巻

アクセスが多いようなので追記:
Jadよりもhttp://java.decompiler.free.fr/というソフトを使ったほうが便利だと思います。


目を背けたい現実のひとつとして、ある日突然ソースファイルがないプロダクトの修正を任されたりするというものがありますよね。Jadはそんなときに使います。

Jadのダウンロード

本家サイトが行方不明なので、ミラーサイトからダウンロードします。
http://www.varaneckas.com/jad


テキトウな場所に置いて、パスを通しておきます。
パス設定が面倒な人はC:\WINDOWSの中にでも入れなされ。

ふつうの使い方

jad -s HelloWorld.class

HelloWorld.classを逆コンパイルした、HelloWorld.jadというJavaソースファイルができる。

少し便利な使い方

jad -s java -d src -r classes\**\*.class

classes配下にある全ての.classファイルを逆コンパイルして、パッケージ階層を維持したままsrc配下に.ファイル拡張子を.javaにして出力する。

Eclipseから使う

JadClipseというプラグインをダウンロードしてくる。
http://sourceforge.net/projects/jadclipse/


解凍してできたファイルを、

  • Eclipse3.3以下の場合はplugins配下に入れる
  • Eclipse3.4の場合はdropins配下に入れる。

なお、jadClipseにはjad.exeが内蔵されていないので、別途jad.exeが必要。jad.exeにパスを通しておくか、設定画面のPath to decompilerにjad.exeを含めたフルパスを書いておく。


使い方は簡単。
.classのファイルを開くと内部で勝手に逆コンパイルしてくれる。