Java C语言的BCI库

vek*_*tor 5 c java instrumentation bcel jvmti

我正在寻找C或C ++中Java的BCI(字节码工具)库,以便在JVMTI代理中使用

最好的情况是纯C中的ASMBCEL之类的东西。

到目前为止,我发现的最接近的东西只是java_crw_demoKelly O'Hair几年前编写的一个演示,此演示此后一直在Sun / Oracle的教程中使用。

你还知道其他吗?

一些基本原理:我正在构建一种仪表工具,向的java.lang.Object每个直接子类中添加一个getter方法并将此getter重载Object。因此,我不能使用Java代理。另外,出于复杂性和速度的原因,我想避免产生第二个JVM来执行检测。

old*_*inb 1

很久以前我曾经开始用C写过一个,但由于缺乏动力而没有走得太远。AFAIK 没有 C 语言的公开版本,但是根据JVM 规范编写一个满足您需要的简单版本应该不会太难。您应该对有关文件class格式以及指令集的章节特别感兴趣。