运行 黄瓜功能文件时出现异常

Exception while running cucumber feature file

我在 运行 宁功能文件

时遇到以下异常

线程 "main" cucumber.runtime.CucumberException 中出现异常:java.lang.IllegalArgumentException:常量池索引类型错误 在 cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend.java:164) 在 cucumber.api.java8.En.Given(En.java:190) 在 stepdefinitions.steps.(steps.java:16) 在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法) 在 sun.reflect.NativeConstructorAccessorImpl.newInstance(未知来源) 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(来源不明) 在 java.lang.reflect.Constructor.newInstance(来源不明) 在 org.picocontainer.injectors.AbstractInjector.newInstance(AbstractInjector.java:145) 在 org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:342) 在 org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270) 在 org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364) 在 org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64) 在 org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91) 在 org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:699) 在 org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:647) 在 org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:678) 在 cucumber.runtime.java.picocontainer.PicoFactory.getInstance(PicoFactory.java:37) 在 cucumber.runtime.java.JavaBackend.buildWorld(JavaBackend.java:131) 在 cucumber.runtime.Runtime.buildBackendWorlds(Runtime.java:140) 在 cucumber.runtime.model.CucumberScenario.run(CucumberScenario.java:38) 在 cucumber.runtime.model.CucumberFeature.run(CucumberFeature.java:165) 在 cucumber.runtime.Runtime.run(Runtime.java:121) 在 cucumber.api.cli.Main.运行(Main.java:36) 在 cucumber.api.cli.Main.main(Main.java:18) 原因:java.lang.IllegalArgumentException:常量池索引处的类型错误 在 sun.reflect.ConstantPool.getMemberRefInfoAt0(本机方法) 在 sun.reflect.ConstantPool.getMemberRefInfoAt(未知来源) 在 cucumber.runtime.java8.ConstantPoolTypeIntrospector.getTypeString(ConstantPoolTypeIntrospector.java:37) 在 cucumber.runtime.java8.ConstantPoolTypeIntrospector.getGenericTypes(ConstantPoolTypeIntrospector.java:27) 在 cucumber.runtime.java.Java8StepDefinition.(Java8StepDefinition.java:45) 在 cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend.java:162) ... 还有 23 个

您使用的 cucumber-java8 版本与您的 JVM 不兼容。要完成它的工作 cucumber-java8 取决于 JVM 的一些实现细节(常量池布局)。升级你的黄瓜或降级你的 JDK。或者考虑使用 cucumber-java.

提供的基于注释的步骤定义