Parsen von Class-Dateien mit der Standard-API
Die Standard-Class-File-API zum Parsen und Transformieren von Class-Dateien verwenden.
Code-Vergleich
✕ 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()));
Problem mit diesem Code entdeckt? Sag uns Bescheid.
Warum der moderne Weg gewinnt
Unterstützte API
Wird zusammen mit dem JDK-Class-Dateiformat ausgeliefert und weiterentwickelt.
Weniger Abhängigkeiten
Erledigt gängige Bytecode-Aufgaben ohne externe Bibliothek.
Kombinierbare Modelle
Parsen, Erstellen und Transformieren verwenden dieselbe API.
Alter Ansatz
ASM ClassReader
Moderner Ansatz
Class-File API
Seit JDK
24
Schwierigkeitsgrad
Experte
JDK-Unterstützung
Parsen von Class-Dateien mit der Standard-API
Verfügbar
Finalisiert in JDK 24 (JEP 484, März 2025).
Wie es funktioniert
Die in JDK 24 finalisierte Class-File-API bietet unterstützte Modelle und Transformationen für JVM-Class-Dateien. Sie folgt dem Class-Dateiformat des JDK und macht Drittanbieterbibliotheken für viele Inspektions- und Generierungsaufgaben überflüssig.
Zugehörige Dokumentation
Beweis