Javassist
Javassist是一个开源的分析、编辑和创建Java字节码的类库。是由东京技术学院的数学和计算机科学系的 Shigeru Chiba 所创建的。它已加入了开放源代码JBoss 应用服务器项目,通过使用Javassist对字节码操作为JBoss实现动态AOP框架。
BCEL
Byte Code Engineering Library (BCEL),这是Apache Software Foundation 的Jakarta 项目的一部分。BCEL是 Java classworking 最广泛使用的一种框架,它可以让您深入 JVM 汇编语言进行类操作的细节。BCEL与Javassist 有不同的处理字节码方法,BCEL在实际的JVM 指令层次上进行操作(BCEL拥有丰富的JVM 指令级支持)而Javassist 所强调的源代码级别的工作。
ObjectWeb ASM
ObjectWeb ASM轻量级的Java字节码处理框架。它可以动态生成二进制格式的stub类或其他代理类,或者在类被JAVA虚拟机装入内存之前,动态修改类。ASM 提供了与 BCEL和SERP相似的功能,只有22K的大小,比起350K的BCEL和150K的SERP来说,是相当小巧的,并且它有更高的执行效率,是BCEL 的7倍,SERP的11倍以上。
cglib
cglib是一个强大的,高性能,高质量的Code生成类库。它可以在运行期扩展Java类与实现Java接口。Hibernate用它来实现PO字节码的动态生成。
Cojen
Cojen是一个动态Java字节码生成和分解工具。使用一个建造器来方便地生成代码,而不用再选择精确的指令。Cojen提供的工具类演示了代码生成器和加载器的使用。
JClassLib
JClassLib不但是一个字节码阅读器而且还包含一个类库允许开发者读取,修改,写入Java Class文件与字节码。
SERP
SERP字节码框架提供一组高级的APIs进行字节码各主方面的操作。SERP字节码框架能够使你不需要明白class文件格式与JVM 指令就可以轻松完成bytecode操作
Trove Class File API
这个类文件API简化了Java class文件的创建。它允许你调用高级的方法来产生byte-code,不是直接编写byte-code。
Classfile Reader & Writer
这个包使得读写java class文件变得很容易。它可以很容易得把class文件的内容显示给用户(除非你要统计Bug的输出数)与分解字节码。
Package gnu.bytecode
Package gnu.bytecode包含一些可以生成,读取,打印Java字节码文件的Java类。这个包是Kawa项目的一部分。

AOP框架