java如何插入/截取方法。在ByteBuddy代理中调用?
这似乎不起作用:
new AgentBuilder
.Default()
.with(initStrat)
.ignore(not(is(Method.class)))
.type(any()).transform(....)
另外,我只想截取java.lang.reflect.Method.invoke
,而不截取Method
类的其他方法
另外,在代码中的哪里可以看到默认情况下被忽略的类、包和模块的列表
# 1 楼答案
这似乎是正确的,但是在引导类上检测类是特别棘手的,因为您的代理对于这些类是不可见的。在transformer中,添加您的检测,并通过适当的匹配器将其限制为
invoke
方法添加一个
AgentBuilder.Listener
以获取由Byte Buddy检测的所有类的通知