我正在使用Bytebuddy拦截HttpURLConnection的某些方法并添加跟踪。我编写了以下代码:
File temp = Files.createTempDirectory("tmp").toFile();
new AgentBuilder.Default().ignore(none())
.enableBootstrapInjection(inst, temp)
.type(hasSuperType(is(HttpURLConnection.class)))
.transform(new AgentBuilder.Transformer.ForAdvice()
.include(HttpURLConnection.class.getClassLoader())
.advice(named("setRequestMethod"), HttpURLIntercept.class.getName()))
.installOn(inst);
但是该方法从未使用过。
我知道HttpURLConnection已加载到引导程序中。我怎么仍可以检测呢?
答案 0 :(得分:0)
默认情况下,字节好友忽略引导类加载器。定义一个不包含HttpUrlConnection的其他忽略匹配器,以避免此排斥。请注意,JVM本身定义了成千上万个类,这些类全部加载到引导加载程序中,如果您没有有效地排除大多数引导类,则JVM stsrtup会变得非常慢。