Jad(Jadclipse) の終焉? − Java Decompiler(JD) −

Java Decompiler(JD)というものを見つけたので試してみた.
スタンドアローンで使用するJD-GUIと,Eclipseプラグインとして使用するJD-Eclipseがある.

JD-GUI(0.3.1)の画面

JD-Eclipse(0.1.3)の画面
Webサイトに挙げられている特徴から主なものを抜粋すると以下のとおり.

JD-Eclipseは,Windowsでは以下のVC++のランタイムを必要とする.
Microsoft Visual C++ 2008 SP1 Redistributable Package (x86), Microsoft Visual C++ 2008 SP1 Redistributable Package (x64)
また,Eclipse3.4の場合は「Equinox p2 Provisioning」を事前に入れておかないといけないらしい.詳細はJD-Eclipseページを参照.
手元のEclipse3.5では,特に何も事前にインストールしなくてもJD-Eclipseをインストールできた.

JD-GUIが,インストールが簡単なだけでなく,Javaキーワードに対応した色づけ,ナビゲーションなど必要な機能は備えている.ログファイルのStackTraceからもジャンプできるので,ちょっとした障害解析をするのにも使える.
しかも,.classファイル中にソースの行数が残っていれば,逆コンパイルして生成されたソースコードの行番号でなく,元のソースコードの行番号が表示され,StackTraceからも正確にジャンプできる.これはかなり嬉しい.
#JD-Eclipseの場合は,EclipseJavaエディタが行番号を付けるので,元のソースコードの行番号はコメントとして挿入されているので少し見辛くなる.
残念ながら.javaは開くことができないが逆コンパイラなので仕方ないか。。。

Javaの逆コンパイラと言えば,Jadが定番だった。EclipseプラグインJadclipseと組み合わせて使用している人は多数いるだろう。だが,これからはJDを使っていこうかなと思った.

まだ,試したことのない方も一度触ってみることをお奨め!