JD-EclipseでJavaのclassファイルをデコンパイルする
Javaプロジェクトでは、既存のライブラリや独自フレームワークを使わされることがある。こういうとき、classファイルのみでソースが見れずにデバッグが不便!ソースが見たい!と思うことがよくあるが、そういうときはデコンパイルツールを使うとclassファイルからソースコードを復元してくれるのでとても便利。Javaはバイトコードに変換する都合上、バイナリファイルからでもほぼ完全なソースコードを復元することができるので、読み込んだjarファイルを使ってデバッグする際にもデコンパイルツールは必須と言える。
デコンパイルツールは昔はJadというものがあったが最近はどうも更新されていないらしい。で調べたところ、今どきのデコンパイルツールとしてJD(Java Decompiler) Projectというものがあり、こちらが主流のようだ。なので、今回はJDを使ってEclipseからデコンパイルする手順をまとめてみる。
■JD公式サイト
http://jd.benow.ca/
Eclipseで使う場合もとても簡単で、用意されたプラグインをインストールするのみ。早速使ってみる。
JD-Eclipseをインストールする
Eclipseのヘルプ > 新規ソフトウェアのインストール
追加
名前:JD-Eclipse Update Site
ロケーション:http://jd.benow.ca/jd-eclipse/update
Java Decompiler Eclipse Plug-inを選択し、次へ
次へ
同意し、完了
インストールが開始される。しばらくすると以下の選択ウィンドウが開く。
選択し、OK
Eclipse再起動
再起動後にEclipseにて適当なjarファイルを開き、適当なclassファイルを開くと以下のようにソースコードが見れるようになっている!
JD-GUIを使ってみる
ちなみにJD-GUIというものも同ページからダウンロードできるが、こちらはインストール不要の実行ファイルとなっており、jarファイルを読み込ませるだけで以下のようにデコンパイルされたソースを見ることができる。Windows、mac、Linux版とそろっており、Eclipseがない環境で手軽に見たい場合はこちらが便利。