运行 黄瓜功能文件时出现异常
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
.
提供的基于注释的步骤定义
我在 运行 宁功能文件
时遇到以下异常线程 "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
.