Java クラス ファイルを「逆コンパイル」するにはどうすればいいですか? [closed] 質問する

Java クラス ファイルを「逆コンパイル」するにはどうすればいいですか? [closed] 質問する

クラス ファイルを逆コンパイルするにはどのプログラムを使用できますか? 実際に Java コードが取得されますか、それとも JVM アセンブリ コードだけでしょうか?

このサイトの Java パフォーマンスに関する質問では、コンパイラが特定のものをどのように最適化するかを確認するために Java クラス ファイルを「逆コンパイル」した人からの回答をよく見かけます。

ベストアンサー1

2016 年 2 月の更新:

javadecompilers.com よりJAD は次のようにリストされています:

最も人気のある Java デコンパイラですが、主にこの時代のものです。C++ で書かれているので非常に高速です。
時代遅れでサポートされておらず、Java 5 以降では正しくデコンパイルされません。

したがって、最近の JDK (7、8) では結果が異なる場合があります。

同じサイトに他のツールもリストされています。

そしてjavadecompilerは、サルバドール・バレンシアコメント.class(2017 年 9 月) は、ファイルをクラウドにアップロードすると、逆コンパイルされたコードが返される SaaS を提供しています。


元の回答: 2008年10月

  • J2SE 5.0 (Java SE 5) の主要機能を定義する JSR 176 の最終リリースが、2004 年 9 月 30 日に公開されました。
  • パベル・クズネツォフ氏が書いた有名なJavaデコンパイラであるJADでサポートされている最新のJavaバージョンは、1.3 より
  • 「DJ Java Decompiler」や「Cavaj Java Decompiler」など、現在インターネットからダウンロードできる Java デコンパイラのほとんどは JAD を搭載しており、Java 5 ソースを表示できません。

Java デコンパイラ(もう 1 つの高速 Java デコンパイラ) には次の機能があります。

  • Java 5+ の「.class」ファイルの逆コンパイルと分析を明示的にサポートします。
  • 素晴らしい GUI:

スクリーンショット

JDK 1.1.8からJDK 1.7.0までのコンパイラで動作します。ジケスロックイットなど)。

オンラインライブデモ版実際に完全に機能します。ページに jar ファイルをドロップするだけで、何もインストールせずに逆コンパイルされたソース コードを表示できます。

おすすめ記事