Javassist is a class library for editing bytecode in java.
Javassist is one of several tools that exist for manipulation of Java Bytecode but, it includes a simple Java Compiler for processing source text. It receives source text written in Java and compiles it into Java bytecode, which will be inlined into a method body.
This feature allows first comers to start modifying class' bytecode to some extent without deep knowledge regarding the class format or actual bytecode instruction set and OP Codes.
- Javassist Official Tutorial
- For better understanding on JVM bytecode modifications, please refer to Java Virtual Machine Specification