Java 从命令行运行时,Cucumber找不到步骤定义

Java 从命令行运行时,Cucumber找不到步骤定义,java,junit,cucumber,Java,Junit,Cucumber,我下载了最新的Cucumber Java版本-4.7.2,我想从IDE Intellij运行Cucumber测试,IDE中一切正常。但是,如果从命令行运行,则会出现错误“io.cumber.junit.UndefinedThrowable:” 在IDE中运行测试运行程序“RunCucumberTest”:OK 方法: java -cp "lib/cucumber-4.7.2/*" io.cucumber.core.cli.Main --glue au.com.demo.quality.stepd

我下载了最新的Cucumber Java版本-4.7.2,我想从IDE Intellij运行Cucumber测试,IDE中一切正常。但是,如果从命令行运行,则会出现错误“io.cumber.junit.UndefinedThrowable:”

在IDE中运行测试运行程序“RunCucumberTest”:OK

方法:

java -cp "lib/cucumber-4.7.2/*" io.cucumber.core.cli.Main --glue au.com.demo.quality.stepdefinitions  --plugin pretty  --name "^demo test$" src/test/resources/features/DemoTest.feature
结果:如上所述步骤未定义

JUnit方法:

java -cp "../lib/cucumber-4.7.2/*;../out/production/demo" org.junit.runner.JUnitCore au.com.demo.quality.runners.RunCucumberTest
Quality
-lib
-out
 --Production
   ---demo
   ......
-bdd
 --src
   ---test
      ----java
      ----resources
结果:如上所述步骤未定义

项目结构:

java -cp "../lib/cucumber-4.7.2/*;../out/production/demo" org.junit.runner.JUnitCore au.com.demo.quality.runners.RunCucumberTest
Quality
-lib
-out
 --Production
   ---demo
   ......
-bdd
 --src
   ---test
      ----java
      ----resources
更多详细信息如下面的屏幕截图所示

我在stackoverflow和google中搜索过,没有找到答案。这里有一些有用的参考资料,但它们不是我的答案。谢谢


我想出来了。步骤定义类无法扩展另一个类,否则将找不到步骤定义。

是否在类路径中包含您自己的代码?是的,类路径“lib/cucumber-4.7.2/*”用于所需的jar包,类路径“lib/”中安装了旧的cumber java 1.2.5,因此我将所有新版本移到了lib/cucumber-4.7.2/*”,另一个用于类文件“RunCucumberTest.class”。