Bekanntmachung Verbesserung ASM-Lib

28/07/2015 - 16:36 von Heiner Kücker | Report spam
http://heinerkuecker.de/ASM_Improved.html

Diese Lib verbessert das API der ASM-Bytecode-Lib

http://asm.ow2.org

durch das Bereitstellen eines Baumes
im Gegensatz zur Visitor-Arbeitsweise
mit den Informationen zu Klassen
(Klassen, Interfaces, Enums, Annotationen)
(alles, was ein *.class-File erzeugt,
ausser package-info.class),
Annotationen, Feldern und Methoden
sowie strukturierter und getypter Informationen
zu Typen einschliesslich Generics.

Ziel ist es, Informationen über
Klassen, Annotationen, Felder, Methoden und
Generics ohne das Laden der Klasse, was bei
der Benutzung von Reflection notwendig wàre
und eventuell aufgrund vorhandenen
Initialisierungscodes schwierig sein könnte
oder scheitern könnte.

Es werden nur die Informationen geliefert,
die auch mit Reflection erreichbar wàren,
Executables (Methoden, Konstruktoren,
statische Initialisierer und
Initialisierungs-Ausdrücke von Feldern)
werden nicht beachtet.

Auch Bytecode-Manipulation wird von meiner
Lib nicht unterstützt.

Ich habe meine Lib unter Java8 entwickelt,
aber bewusst keine Java8-Sprach-Features
genutzt.
Deshalb sollte meine Lib auch unter
Java7 funtionieren.

Die von mir genutzte Version der ASM-Lib
liegt im lib-Verzeichnis des
Auslieferungs-Zip bei.

Zur Benutzung finden sich entsprechende
Code-Beispiele im test-Verzeichnis
mit den JUnit4-Tests.

Eventuell wàre die Benutzung der BCEL-Lib

http://commons.apache.org/proper/commons-bcel

günstiger gewesen.

Übrigens sind beide Libs Bestandteil
des Java8-JDK.

Viel Erfolg
Heiner Kücker
 

Lesen sie die antworten

#1 Florian Weimer
28/07/2015 - 18:21 | Warnen spam
* Heiner Kücker:

http://heinerkuecker.de/ASM_Improved.html

Diese Lib verbessert das API der ASM-Bytecode-Lib

http://asm.ow2.org

durch das Bereitstellen eines Baumes
im Gegensatz zur Visitor-Arbeitsweise
mit den Informationen zu Klassen



Was ist der Unterschied zur Tree-API von ASM?

Ähnliche fragen