Eclipse Helios で Java Decompiler / JD / JD-Eclipse を実行する方法
-
12-10-2019 - |
質問
Java Decompiler (JD) は、一般に、優れた Java Decompiler として推奨されます。JD-Eclipse は、JD 用の Eclipse プラグインです。
いくつかの異なるマシンでプラグインを実行する際に問題が発生しました。.class ファイルを開こうとすると、標準の「ソースが見つかりません」エディタが表示され、逆コンパイラから期待される Java ソース出力ではなく、低レベルのバイトコード逆アセンブリが表示されます。
のインストールドキュメント http://java.decompiler.free.fr/?q=jdeclipse 悪くはありませんが、トラブルシューティングに関しては非常に曖昧です。
この質問を開いて追加情報を収集します。JD を Eclipse Helios で実行する前に、どのような問題に遭遇しましたか?解決策は何でしたか?
解決
これが私が出会ったものです:
1)RTFMと「Microsoft Visual C ++ 2008 SP1再配布可能なパッケージ」をインストールしてインストールします。ヘリオスの指示が最後にあるので、私は最初はこれを逃しました。
2)クラスファイルを開く前に、すべての開いたエディタータブを閉じます。それ以外の場合は、以前の試みから古いエディタータブを簡単に入手できます。
3)「Javaクラスファイルエディター」(「Javaクラスファイルビューアー」ではない)でクラスファイルを開きます。コンテキストメニューで「Open with」を使用して、適切なエディターを取得します。結果に満足している場合は、ファイルアソシエーションの設定のデフォルトエディターにします。ウィンドウ/設定一般/エディター/ファイルアソシエーション[Javaクラスファイルエディター]で開くには *.class。
4) この男 Helios UpdateサイトからEquinox SDKをインストールすることをお勧めします。私はしましたが、これが本当に必要かどうかはわかりません。誰かが知っていますか?
5)表示しようとしているクラスファイルがEclipse Javaプロジェクトにある場合、プロジェクトのビルドパスにある必要があります。それ以外の場合、例外(「ビルドパスではない」)がEclipseエラーログに表示され、逆コンパイルが失敗します。クラスファイルをビルドパスにライブラリ /クラスファイルフォルダーとして追加しました。
6)Windows Explorerからクラスファイルをドラッグ/ドロップするか、ファイル/開いたファイルで開くとは機能しません。私のテストでは、「エディターを開くことができませんでした:クラスファイルビューアは指定された入力( 'org.eclipse.ui.ide.filestoreeditorinput')を処理できません。」エラー。それはおそらく間違った編集者です。
7)基本的にプラグインを実行した後、一部のファイルは未知の理由でまだ逆コンパイルしません。これは、すべてのタブを閉じ、ヘリオスを再起動し、再試行した後に消えました。
他のヒント
Eclipse Junoで機能させるには、追加の手順を実行する必要がありました。
一般的に - >エディター - >ファイルアソシエーション
- デフォルトとして「*.Class」と「クラスファイルエディター」をマークする
- ソースなし] - > add-> "クラスファイルエディター" - >デフォルトにする「*.class」を選択します
- 日食を再開します
私は Eclipse 3.7 Indigo と Windows 7 64 ビットを使用しています。
私がしたのは、サイトで提案され、@Universalspezialist によって思い出されたように、Microsoft Visual C++ 2008 SP1 再頒布可能パッケージをインストールすることでした。
次に、サイトに記載されているようにプラグインをインストールします。 http://java.decompiler.free.fr/?q=jdeclipse
優先順位に移動し、「ファイルアソシエーション」を見つけて、 *.classをクリックしてから、「クラスファイルエディター」をデフォルトとして設定します。
Eclipseを再起動してみてはいかがでしょうか?(これをやりましたが、必要かどうかはわかりません)
私がそれを機能させるためにした簡単なこと:
Eclipse> window> feprencesに行きました
(オプション)検索ボックス「ファイル」に入力して、オプションのツリーをトリミングするのに役立ちます。一般的な>編集者>ファイルアソシエーションに行きました。
「.class」タイプをクリックしました。以下に2人のエディターが存在し、「クラスファイルエディター」をクリックしました。これは、JDのアイコンを備えたもので、右側の「デフォルト」ボタンをクリックしました。
終わり。今、すべてのクラスは私たちのものです。
JD-Eclipseプラグイン0.1.3はのみです ClassPath/ビルドパスから表示される。クラスファイル.
もしあなたの クラスは.jarにあります, 、この瓶を別のライブラリとしてビルドパスに追加するだけです。パッケージからエクスプローラーから新しいライブラリを閲覧し、クラスファイルエディターでクラスを開きます。
逆コンパイルしたい場合 ファイルシステム上の任意のクラス, 、適切なフォルダーヒエラチーに存在する必要があり、ルートフォルダーをビルドパスに含める必要があります。これが例です:
- クラスはfoo.bar.myclass in .../somedir/foo/bar/myclass.class
- Eclipseプロジェクトでは、任意の名前Aclassdirのフォルダーを追加します。これは.../Somedirにリンクします。
- リンクされたフォルダーをプロジェクトのビルドパスに追加します。
- ナビゲータービューを使用して、クラスファイルエディターの.classファイルをナビゲートして開きます。 (注:ファイルシステム上のプレーンクラスファイルは、パッケージエクスプローラービューに隠されています。)
注:Somedirがプロジェクトのサブフォルダーである場合、ステップ2(リンクフォルダー)をスキップして、ビルドパスに直接追加できる場合があります。しかし、それがEclipseプロジェクトのコンパイラ出力フォルダーである場合、それは機能しません。
PSクラスパスでそれを持っている必要なく、プロジェクトのサブフォルダーで任意の.classファイルをダブルクリックすることができたらいいのにと思います...
Spring Tool Suit(STS)でも、Eclipseのすべてのバージョンで機能するはずです。これがステップです
URLに移動しますダウンロードするにはリンクに従ってください または、[Bellowリンク]をクリックして、直接ダウンロードしますダウンロードするにはこちらをクリック
ダウンロード JD-Eclipse
。 JD-Eclipse Updateサイトをダウンロードして解凍します。
Eclipseを起動し、
「ヘルプ>新しいソフトウェアのインストール...」をクリックして、
追加]ボタンをクリックして、新しいリポジトリを追加して追加します。
「JD-Eclipse Updateサイト」を入力し、ローカルサイトディレクトリを選択します。
抽出されたフォルダーを選択し、名前を付けます。私は与えました JDA
。 [OK]をクリックします。
「Java Decompiler Eclipseプラグイン」を確認してください。
次に、次に...そして日食を再開します。
代わりにjadeclipseを使用します。なぜなら、それは3.6/3.7 Eclipseで動作できないからです
サイトを更新しますhttp://webobjects.mdimension.com/jadclipse/3.6/
インタールhttp://5thcross.wordpress.com/2009/05/20/installing-jadclipse-in-eclipse/
Eclipse用のJad Decomplierプラグイン バージョン3.xおよび4.x。
サイトの更新: http://feeling.sourceforge.net/update
ステップ:
- Eclipse IDEを開きます。
- ヘルプ] - > [新しいソフトウェアのインストール]をクリックします
- URLの上に貼り付け、Jadとして名前を付けます。
- Eclipse Class Decompilerを選択します
- 次へ]をクリックして、契約を受け入れます
- インストールします。
- Eclipseを再起動して、今すぐ確認してください。
Juno、Kepler、Lunaでテストした後、JDのみが機能することがわかりました *。ビルドパス上のクラスファイル.
- 既存のプロジェクトのLibとして瓶を追加する
- 設定に移動 - > general-> editors-> file associations、set
*.class without source
にClass File Editor
カップアイコン付き
スタンドアロンジャーを逆コンパイルする必要がある場合は、同じ自動(JD-Eclipse)でJD-GUIを試してください。スタンドアロンアプリケーションです(日食は必要ありません)。 *.classと *.jarファイルの両方を開くことができます。興味深いことに、.NETがインストールされている必要があります(JD-Eclipseと同様)が、それ以外の場合は魅力のように機能します。
ここでそれを見つけてください:
よろしく、
手順1、2、3、および7を作成しました。プロジェクトビルドパスにクラスファイルを使用してフォルダーを配置します(右クリック、プロパティ、Javaビルドパス、ライブラリ、クラスフォルダーの追加、新しいフォルダーの作成、>> 、ファイルシステムのフォルダーへのリンク、閲覧、...)Eclipseを再起動します。
EclipseでJava Decompilerを追加する手順:
- Eclipse IDEを開きます。
- ヘルプ]をクリック - >Eclipse Marketplaceウィザード
- 検索タブでJDを見つけます(JDはEclipseクラスの逆コンパイラを取得するためのキーワードです)
- を選択 Eclipse Class Decompiler
- インストールをクリックします。
- Eclipseを再起動して確認します
JDページからサイトをダウンロードするだけです。 EclipseのISTalledソフトウェアセクションにあるローカルサイトからインストールすることができました。
- JD-Eclipse Updateサイトをダウンロードします(github.com/java-decompiler/jd-eclipse)
Eclipseを起動し、
「ヘルプ>新しいソフトウェアのインストール...」をクリックして、
追加]ボタンをクリックして、新しいリポジトリを追加して追加します。
「JD-Eclipse Updateサイト」を入力し、ローカルサイトディレクトリを選択します。
「Java Decompiler Eclipseプラグイン」を確認してください。
次に、次に...そして日食を再開します。