Bcel
BCEL, short for Byte Code Engineering Library, is a Java library that provides a framework for analyzing, creating, and manipulating Java bytecode. The library reads Java class files, decodes their structure (constant pool, interfaces, fields, methods, attributes), and enables programmatic modification and generation of bytecode. It offers an object-oriented API for constructing new classes, inserting or removing methods, altering instruction streams, and updating the constant pool and exception tables. It can serialize modified program representations back into valid class files.
BCEL is used for bytecode instrumentation, analysis, and transformation tasks in development and research tools. Common
Development and licensing: BCEL is open source and has been associated with the Apache Software Foundation.