クラスファイルやリソースファイルなど、jar 内のファイルを解凍せずに直接変更するための IDEA プラグイン。
プラグインマーケットプレイス: https://plugins.jetbrains.com/plugin/24397-JarEditor
まず、マーケットプレイスからプラグインJarEditor 、IDEA 少なくともバージョン2020.3をインストールします。
インストール後、.class 逆コンパイルされたファイルで Jar Editor に切り替えるためのタブ ページが表示されます。
外部 jar : [ファイル] -> [プロジェクト構造] -> [ライブラリ] -> [ライブラリの追加] をクリックすると、逆コンパイルされた jar が表示されます。
ネストされた jar : ネストされた jar を右クリック -> JarEditor -> 構造 -> ネストされた Jar を展開
変更後、 「保存(コンパイル)」をクリックして、現在変更されているJavaコンテンツをコンパイルして保存します。
最後に[Build Jar]をクリックして、コンパイルして保存したクラス ファイルを Jar パッケージに書き込みます。
jar パッケージ内のリソース ファイルの変更もサポートされています。
以下に例を示します。
難読化された jar の場合、逆コンパイルの結果は満足のいくものではありません。この場合、ツールを使用してバイトコードを直接変更できます。 「クラスバイト」ツールアイコンをクリックしてツールを選択します
jar パッケージのプロジェクト ビューで右クリックすると、 JarEditor -> [新規作成/削除]およびその他の操作が表示され、ファイルの追加/削除/名前変更/コピー/貼り付け/エクスポートが可能です。
「検索」アイコンをクリックして、jar パッケージの内容を検索します。クラス jar の場合は、逆コンパイルされた内容に基づいて検索されます。
SDK Defaultをコンパイルして選択すると、Jetbrains によって統合されたランタイム JDK (JBR) が使用されます。 SDK Default が選択されていない場合は、特定のユーザーがインストールした JDK が使用されます。
アイデア | JDK |
---|---|
アイデア 2020.3 - アイデア 2022.1 | JBR JDK11 |
アイデア 2022.2 - アイデア 2024.1 | JBR JDK17 |
IDEA 2024.2 以降 | JBR JDK21 |