1

当我尝试使用Ctrl+运行 JUnit 测试时,带有 Quick JUnit 插件的 Eclipse 给了我以下错误0

java.lang.NoClassDefFoundError: org/junit/runner/notification/StoppedByUserException
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:48)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: java.lang.ClassNotFoundException: org.junit.runner.notification.StoppedByUserException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    ... 6 more

JUnit 位于pom.xml

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.9</version>
        <scope>test</scope>
    </dependency>
    ...
</dependencies>
4

3 回答 3

2

安装 m2e - Maven Integration for Eclipse 插件(在之前的 Eclipse 升级期间消失)修复了该错误。

于 2013-02-11T20:24:03.173 回答
0

我通过安装 Ive DE 解决了。问题基本上是没有解决依赖关系。在运行 Junit 之前我没有注意到,因为该项目已经用较旧的 Eclipse 编译。

于 2013-08-15T11:21:26.093 回答
0

我发现这可能是由于使用 eclipse luna 打开了 eclipse mars 工作区。我这样做了,直到我记得我已经更新了 eclipse 但没有更新到 eclipse 的链接时才让它工作。使用 eclipse mars 打开所有单元测试再次工作。

于 2015-08-03T19:02:37.517 回答