我在网上找到的所有参考资料都说可以在运行时修改字节码,但我似乎没有发现修改后的字节码是否可以取代原始的字节码。
这样,原始字节码只需替换一次,其余时间则使用增强后的字节码。
发布于 2011-03-05 02:21:11
是的,它被称为build-time字节码插装;javassist以及aspectj等库都支持这种模型。
在使用aspectj-maven-plugin将后者与Apache Maven结合使用时,我有很好的经验。
编辑另请参阅Implementing Build-time Bytecode Instrumentation With Javassist文章。
https://stackoverflow.com/questions/5197622
复制相似问题