运行cucumber功能文件时发生异常

运行cucumber功能文件时发生异常,cucumber,Cucumber,我在运行功能文件时遇到以下异常 主线程cucumber.runtime.CucumberException中的异常:java.lang.IllegalArgumentException:常量池索引处的类型错误 在cucumber.runtime.java.JavaBackend.addStepDefinitionJavaBackend.java:164 位于cucumber.api.java8.En.GivenEn.java:190 在stepdefinitions.steps.steps.ja

我在运行功能文件时遇到以下异常

主线程cucumber.runtime.CucumberException中的异常:java.lang.IllegalArgumentException:常量池索引处的类型错误 在cucumber.runtime.java.JavaBackend.addStepDefinitionJavaBackend.java:164 位于cucumber.api.java8.En.GivenEn.java:190 在stepdefinitions.steps.steps.java:16 在sun.reflect.NativeConstructorAccessorImpl.newInstance0Native方法中 位于sun.reflect.nativeConstructor附件mpl.newInstanceUnknown Source 位于sun.reflect.delegatingConstructor或AccessorImpl.newInstanceUnknown Source 位于java.lang.reflect.Constructor.newInstanceUnknown Source 位于org.picocontainer.injectors.AbstractInjector.newInstanceAbstractInjector.java:145 位于org.picocontainer.injectors.ConstructorInjector$1.runConstructorInjector.java:342 在org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicdDependencyGuard.observabstractInjector.java:270上 位于org.picocontainer.injectors.ConstructorInjector.getComponentInstanceConstructorInjector.java:364 位于org.picocontainer.behaviors.AbstractBehavior.getComponentInstanceAbstractBehavior.java:64 位于org.picocontainer.behaviors.Stored.getComponentInstanceStored.java:91 位于org.picocontainer.DefaultPicoContainer.getInstanceDefaultPicoContainer.java:699 位于org.picocontainer.DefaultPicoContainer.getComponentDefaultPicoContainer.java:647 位于org.picocontainer.DefaultPicoContainer.getComponentDefaultPicoContainer.java:678 在cucumber.runtime.java.picocontainer.picofatory.getInstancePicoFactory.java:37 在cucumber.runtime.java.JavaBackend.buildWorldJavaBackend.java:131 在cucumber.runtime.runtime.buildBackendWorldsRuntime.java:140 在cucumber.runtime.model.CucumberScenario.runCucumberScenario.java:38 在cucumber.runtime.model.CucumberFeature.runCucumberFeature.java:165 在cucumber.runtime.runtime.runRuntime.java:121 位于cucumber.api.cli.Main.runMain.java:36 位于cucumber.api.cli.Main.mainMain.java:18 原因:java.lang.IllegalArgumentException:常量池索引处的类型错误 在sun.reflect.ConstantPool.getMemberRefInfoAt0Native方法中 位于sun.reflect.ConstantPool.GetMemberRefInfo未知源 在cucumber.runtime.java8.ConstantPoolTypeIntrospector.getTypeStringConstantPoolTypeIntrospector.java:37 在cucumber.runtime.java8.ConstantPoolTypeIntrospector.getGenericTypesConstantPoolTypeIntrospector.java:27 在cucumber.runtime.java.Java8StepDefinition.Java8StepDefinition.java:45 在cucumber.runtime.java.JavaBackend.addStepDefinitionJavaBackend.java:162
... 23更多

您正在使用cucumber-java8和JVM的不兼容版本。cucumber-java8的工作取决于JVM的常量池布局的一些实现细节。升级您的cucumber或降级您的JDK。另一方面,考虑使用由黄瓜Java.java提供的基于注释的步骤定义。请告诉我们你的特征文件是什么样子的,代码是什么?请告诉我们你的特征文件是什么样子的,代码是什么。