java动态生成源文件和字节码方式

    xiaoxiao2025-03-05  9

    ASM:

    ASM 是一个 Java 字节码操控框架。它能够以二进制形式修改已有类或者动态生成类。ASM 可以直接产生二进制 class 文件,

    也可以在类被加载入 Java 虚拟机之前动态改变类行为。ASM 从类文件中读入信息后,能够改变类行为,分析类信息,甚至能

    够根据用户要求生成新类。

    Javassit:

    Javassist是一个开源的分析、编辑和创建Java字节码的类库。是由东京工业大学的数学和计算机科学系的 Shigeru Chiba (千叶 滋)所创建的。

    它已加入了开放源代码JBoss 应用服务器项目,通过使用Javassist对字节码操作为JBoss实现动态AOP框架。javassist是jboss的一个子项目,

    其主要的优点,在于简单,而且快速。直接使用java编码的形式,而不需要了解虚拟机指令,就能动态改变类的结构,或者动态生成类

    Java Annotation Processor:

     java在编译javac时期,可以根据注解处理器生成相应的java文件,然后再一起编译成字节码.class。但不能修改已有的java文件,比如给一个原

    类添加方法等。

    转载请注明原文地址: https://ju.6miu.com/read-1296903.html
    最新回复(0)