BCEL (Byte Code Engineering Library) est une bibliothèque Java de manipulation et d'analyse du bytecode Java. BCEL est un sous-projet d'Apache Commons publié sous licence Apache par la fondation Apache.

BCEL permet d'analyser, créer, et manipuler les fichiers .class Java. Les classes contenues dans ces fichiers sont chargées en mémoire sous forme d'objets qui contiennent toutes les informations symboliques de cette classe: méthodes, attributs et les instructions bytecode, en particulier.

Ces objets peuvent être lus depuis un fichier préexistant, transformés, puis sauvés dans un fichier. Il est également possible de créer dynamiquement une classe à partir de rien.

BCEL est utilisé par un ensemble de projets incluant des compilateurs, optimiseurs, offuscateurs de code, générateurs de code et des outils d'analyse statique de programmes.

Voir aussi

modifier
  • ASM, une bibliothèque logicielle Java alternative pour la manipulation de bytecode.
  • Javassist, une bibliothèque logicielle Java alternative pour la manipulation de bytecode.
  • FindBugs utilise BCEL pour lire les fichiers .class et les parcourir.

Liens externes

modifier