【发布时间】:2010-12-22 17:26:40
【问题描述】:
java -classpath requiredclasspath org.junit.runner.JUnitCore some.package.HelloWorldTest
结果:
JUnit version 4.8.1
.
Time: 0.005
OK (1 test)
但是:
java -javaagent:agent.jar -classpath requiredclasspath org.junit.runner.JUnitCore some.package.HelloWorldTest
结果:
JUnit version 4.8.1
Could not find class: some.package.HelloWorldTest
Time: 0.001
OK (0 tests)
核心问题似乎是:
Class.forName("some.package.HelloWorldTest") (runMain method, line 89, JunitCore)
如下抛出 ClassNotFoundException:
java.lang.ClassNotFoundException: some/package/HelloWorldTest
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at org.junit.runner.JUnitCore.runMain(JUnitCore.java:89)
at org.junit.runner.JUnitCore.runMainAndExit(JUnitCore.java:53)
at org.junit.runner.JUnitCore.main(JUnitCore.java:45)
我不知道为什么它找不到类。请注意,检测代理已成功加载并且不会引发任何异常。
【问题讨论】:
-
它将一些监控代码插入到一些类中。
标签: java classloader junit4 javaagents