blob: 44c15e9a36efbeb13e5795d491a993efc7868227 [file] [log] [blame]
\u001B[1mSYNOPSIS\u001B[0m
${project.description}
Original Maven URL:
\u001B[33mmvn:http://repository.jboss.org/maven2:${pkgGroupId}/${pkgArtifactId}/${pkgVersion}\u001B[0m
\u001B[1mDESCRIPTION\u001B[0m
Javassist (Java Programming Assistant) makes Java bytecode manipulation
simple. It is a class library for editing bytecodes in Java; it enables
Java programs to define a new class at runtime and to modify a class file
when the JVM loads it. Unlike other similar bytecode editors, Javassist
provides two levels of API: source level and bytecode level. If the users
use the source-level API, they can edit a class file without knowledge of
the specifications of the Java bytecode. The whole API is designed with only
the vocabulary of the Java language. You can even specify inserted bytecode
in the form of source text; Javassist compiles it on the fly. On the other
hand, the bytecode-level API allows the users to directly edit a class file
as other editors.
Aspect Oriented Programming: Javassist can be a good tool for adding new
methods into a class and for inserting before/after/around advice at the
both caller and callee sides.
Reflection: One of applications of Javassist is runtime reflection; Javassist
enables Java programs to use a metaobject that controls method calls on
base-level objects. No specialized compiler or virtual machine are needed.
\u001B[1mSEE ALSO\u001B[0m
\u001B[36mhttp://www.csg.is.titech.ac.jp/~chiba/javassist/\u001B[0m