尝试运行黄瓜文件时在eclipse中运行错误

时间:2014-04-16 13:29:17

标签: java cucumber

当我尝试使用黄瓜在日食上运行junit测试时出现此错误

ava.lang.NoClassDefFoundError: cucumber/runtime/snippets/SummaryPrinter
    at cucumber.api.junit.Cucumber.run(Cucumber.java:90)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    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: cucumber.runtime.snippets.SummaryPrinter
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
... 7 more

3 个答案:

答案 0 :(得分:1)

在基于Maven的项目中升级Cucumber版本时出现此错误。

我将<artifactId>cucumber-java</artifactId>版本从1.1.5更新为1.2.4,但我没有更新<artifactId>cucumber-junit</artifactId> - 它仍然是1.1.5。

在我将两者更新为相同版本的那一刻,此错误消失了。

答案 1 :(得分:0)

您的代码所依赖的类文件,它在编译时出现但在运行时未找到。查找构建时和运行时类路径的差异。

答案 2 :(得分:0)

将cucumber-core,cucumber-java和cucumber-junit更新为同一版本(我使用的是1.1.5版本)。问题已为我解决。