当我运行我的程序时,系统会给出这个错误。我该如何解决这个错误?

问题描述 投票:0回答:4

每当我通过Junit运行黄瓜程序时,我都会遇到错误。这里的错误。任何帮助都会很棒

但在程序中,没有错误。

java.lang.NoClassDefFoundError: cucumber/io/ResourceLoader
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.getConstructor(Unknown Source)
at cucumber.runtime.Reflections.hasConstructor(Reflections.java:53)
at cucumber.runtime.Reflections.instantiateSubclasses(Reflections.java:)
at cucumber.runtime.Runtime.loadBackends(Runtime.java:87)
at cucumber.runtime.Runtime.<init>(Runtime.java:41)
at cucumber.api.junit.Cucumber.createRuntime(Cucumber.java:84)
at cucumber.api.junit.Cucumber.<init>(Cucumber.java:63)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(UnknownSource)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.junit.internal.requests.ClassRequest.buildRunner(ClassRequest.java:33)
at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:28)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createUnfilteredTest(JUnit4TestLoader.java:90)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:76)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:49)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:525)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)

Caused by: java.lang.ClassNotFoundException: cucumber.io.ResourceLoader
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)
... 23 more

我想运行我的程序,但系统出错。

cucumber-jvm cucumber-java cucumber-junit
4个回答
1
投票

请确保您具有正确的Cucumber依赖关系/依赖关系。您可以在docs找到您需要的产品和最新版本

如果您使用多个Cucumber依赖项,请确保为所有人使用相同的版本,以避免冲突。


1
投票

以下是运行Cucumber所需的最小依赖项:

Cucumber-java (1.2.2) | Cucumber-junit (1.2.2) | Cucumber-picocontainer (1.2.2) |junit (4.12)

Maven管理其余的依赖项。确保您拥有最新的依赖项,并且您没有混合和匹配版本(所有版本都应遵循1.2.2 / 4.0.0版本)

请分享您的POM.XML依赖项。


0
投票

您可能错过了类路径中的cucumber-core.jar


0
投票

希望你的不是maven项目,或者你没有在你的pom.xml中添加cuc-core依赖。我可以看到@funkyjelly已经提供的解决方案,请仔细阅读。

© www.soinside.com 2019 - 2024. All rights reserved.