Tooling 上級

クラスファイルの解析と変換には標準のClass-File APIを使用する。

✕ Third-party bytecode parser
ClassReader reader = new ClassReader(
        Files.readAllBytes(classFile));
reader.accept(visitor, 0);
✓ Java 24+
ClassModel model = ClassFile.of().parse(classFile);
model.methods().forEach(method ->
        System.out.println(
                method.methodName().stringValue()));
このコードに問題がありますか? お知らせください。
🛡

サポート対象のAPI

JDKのクラスファイル形式とともに提供され、進化します。

📦

依存関係の削減

外部ライブラリなしで一般的なバイトコード処理を実行できます。

🧩

合成可能なモデル

解析、構築、変換で1つのAPIを共有します。

旧来のアプローチ
ASM ClassReader
モダンなアプローチ
Class-File API
JDKバージョン
24
難易度
上級
標準APIによるクラスファイル解析
利用可能

JDK 24(JEP 484、2025年3月)で正式導入

JDK 24で正式導入されたClass-File APIは、JVMクラスファイル用のサポート対象モデルと変換機能を提供します。JDKとともにクラスファイル形式の変更に追従し、多くの検査や生成タスクでサードパーティ製ライブラリが不要になります。