使用ASM的Java中的字节码检测系统类

时间:2012-04-22 04:33:56

标签: java

我的javaagent,通过-javagent运行,在我的一个类上使用回调函数调用静态方法。除了系统类之外,这种方法很有用,例如java / lang,java / util,它在调用方法时抛出ClassDefNotFounderror(使用INVOKESTATIC)。因此看起来它们是检测的,因为尝试了方法调用,但是具有我的用户类没有的访问或可见性问题。我的回调类及其方法都是公开的。

我已经尝试将我的类添加到类路径中(而不是仅通过-javaagent加载)但这没有帮助。是否需要覆盖系统类的某些保护?

1 个答案:

答案 0 :(得分:0)

听起来你正在明确地寻找要修理的课程。为什么不使用java.lang.instrument来拦截目标JVM执行时正在加载的类?见example

您可以粘贴代码或相关部分吗?