1*f1fbf3c2SXin LiJava bytecode engineering toolkit 2*f1fbf3c2SXin Li### [Javassist version 3](http://www.javassist.org) 3*f1fbf3c2SXin Li 4*f1fbf3c2SXin LiCopyright (C) 1999-2018 by Shigeru Chiba, All rights reserved. 5*f1fbf3c2SXin Li 6*f1fbf3c2SXin LiJavassist (JAVA programming ASSISTant) makes Java bytecode manipulation 7*f1fbf3c2SXin Lisimple. It is a class library for editing bytecodes in Java; it enables Java 8*f1fbf3c2SXin Liprograms to define a new class at runtime and to modify a class file when the 9*f1fbf3c2SXin LiJVM loads it. Unlike other similar bytecode editors, Javassist provides two 10*f1fbf3c2SXin Lilevels of API: source level and bytecode level. If the users use the source- 11*f1fbf3c2SXin Lilevel API, they can edit a class file without knowledge of the specifications 12*f1fbf3c2SXin Liof the Java bytecode. The whole API is designed with only the vocabulary of 13*f1fbf3c2SXin Lithe Java language. You can even specify inserted bytecode in the form of 14*f1fbf3c2SXin Lisource text; Javassist compiles it on the fly. On the other hand, the 15*f1fbf3c2SXin Libytecode-level API allows the users to directly edit a class file as other 16*f1fbf3c2SXin Lieditors. 17*f1fbf3c2SXin Li 18*f1fbf3c2SXin LiThis software is distributed under the Mozilla Public License Version 1.1, 19*f1fbf3c2SXin Lithe GNU Lesser General Public License Version 2.1 or later, or 20*f1fbf3c2SXin Lithe Apache License Version 2.0. 21*f1fbf3c2SXin Li 22*f1fbf3c2SXin Li#### Files 23*f1fbf3c2SXin Li 24*f1fbf3c2SXin Li * [Readme.html](Readme.html) 25*f1fbf3c2SXin LiReadme file (a longer version of this file). 26*f1fbf3c2SXin Li 27*f1fbf3c2SXin Li * [License.html](License.html) 28*f1fbf3c2SXin LiLicense file 29*f1fbf3c2SXin Li 30*f1fbf3c2SXin Li * [tutorial/tutorial.html](tutorial/tutorial.html) 31*f1fbf3c2SXin LiTutorial 32*f1fbf3c2SXin Li 33*f1fbf3c2SXin Li * ./javassist.jar 34*f1fbf3c2SXin LiThe Javassist jar file (class files) 35*f1fbf3c2SXin Li 36*f1fbf3c2SXin Li * ./src/main 37*f1fbf3c2SXin LiThe source files 38*f1fbf3c2SXin Li 39*f1fbf3c2SXin Li * [html/index.html](html/index.html) 40*f1fbf3c2SXin LiThe top page of the Javassist API document. 41