"AviatorScript ClassDefiner源码解析"
在AviatorScript的内部实现机制中,需要将AviatorScript脚本翻译为可执行的java代码,所以会设计到「类的动态生成」和「类的加载」这2个功能。
而其中关于「类的加载」这部分的功能是在com.googlecode.aviator.code.asm.ClassDefiner
中实现的, 在ASMCodeGenerator
中通过下面的方式来使用:
大约 5 分钟
在AviatorScript的内部实现机制中,需要将AviatorScript脚本翻译为可执行的java代码,所以会设计到「类的动态生成」和「类的加载」这2个功能。
而其中关于「类的加载」这部分的功能是在com.googlecode.aviator.code.asm.ClassDefiner
中实现的, 在ASMCodeGenerator
中通过下面的方式来使用:
本篇文章通过AviatorScript工程自带的一个示例,来简单说明一下AviatorScript的执行流程:
Expression
实例。Exception#execute
方法来触发脚本执行。