如何为已经运行的实例更改Java类的代码?

Zub*_*air 4 java

我希望多次动态地向Java类文件添加和删除检测代码,而无需重新启动Java JVM.这可能吗?

aio*_*obe 7

我建议你看看java.lang.instrument包装,特别是ClassFileTransformer.

这是一篇很好的文章:Instrumentation:使用Java 5类文件转换修改应用程序

对于实际的字节码生成,我建议您查看BCELASM等库.

JRebel的框架也可能会感兴趣.它可以在运行时更改方法体的实现,添加/删除方法和构造函数,添加/删除字段,添加/删除类等.