aboutsummaryrefslogtreecommitdiff
path: root/java/apache-bcel/pkg-descr
blob: ae5ce19236f37bc030ef8935cdfb30611ea43d95 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
The Byte Code Engineering Library (Apache Commons BCEL) is
intended to give users a convenient possibility to analyze, create,
and manipulate (binary) Java class files (those ending with
.class). Classes are represented by objects which contain all the
symbolic information of the given class: methods, fields and byte code
instructions, in particular.

Such objects can be read from an existing file, be transformed by a
program (e.g. a class loader at run-time) and dumped to a file
again. An even more interesting application is the creation of classes
from scratch at run-time. The Byte Code Engineering Library (BCEL) may
be also useful if you want to learn about the Java Virtual Machine
(JVM) and the format of Java .class files.

BCEL is already being used successfully in several projects such as
compilers, optimizers, obsfuscators and analysis tools, the most
popular probably being the Xalan XSLT processor at Apache.

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