Article de reference

Bibliothèque d'ingénierie de code octet

La Byte Code Engineering Library ( BCEL ) est un projet sponsorisé par la fondation Apache, précédemment sous sa charte Jakarta , pour fournir une API simple permettant de décom...

La Byte Code Engineering Library ( BCEL ) est un projet sponsorisé par la fondation Apache, précédemment sous sa charte Jakarta , pour fournir une API simple permettant de décomposer, modifier et recomposer des classes Java binaires (c'est-à-dire du bytecode ). Le projet a été conçu et développé par Markus Dahm avant d'être officiellement donné à la fondation Apache Jakarta le 27 octobre 2001. Il fait partie d' Apache Commons .

Utilisations

BCEL fournit une bibliothèque simple qui expose les composants agrégés internes d'une classe Java donnée via son API sous forme de constructions d'objet (par opposition au désassemblage des opcodes de niveau inférieur). Ces objets exposent également des opérations de modification du bytecode binaire, ainsi que de génération de nouveau bytecode (par injection de nouveau code dans le code existant, ou par génération de nouvelles classes). La bibliothèque BCEL a été utilisée dans plusieurs applications diverses, telles que :

  • Décompilation, obscurcissement et refactorisation du bytecode Java
  • Performance et profilage
Les appels d'instrumentation qui capturent les mesures de performances peuvent être injectés dans les binaires de classe Java pour examiner les données de mémoire/couverture. (Par exemple, en injectant de l'instrumentation aux points d'entrée/sortie.)
  • Mise en œuvre d'une nouvelle sémantique de langage
Par exemple, des ajouts orientés aspect au langage Java ont été implémentés en utilisant BCEL pour décomposer les structures de classe pour l'identification des points de coupure, puis à nouveau lors de la reconstitution de la classe en réinjectant du code lié à l'aspect dans le binaire. (Voir : AspectJ )
FindBugs utilise BCEL pour analyser le bytecode Java à la recherche d'idiomes de code indiquant des bugs.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index