Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven看不到cucumber步骤定义_Java_Maven_Cucumber - Fatal编程技术网

Java Maven看不到cucumber步骤定义

Java Maven看不到cucumber步骤定义,java,maven,cucumber,Java,Maven,Cucumber,我的问题如下:我在eclipse中有一个Cucumber和java项目。我可以成功地运行它。但是,当我尝试使用maven运行它时,没有找到任何步骤定义,错误消息是“您可以使用下面的代码段实现缺少的步骤:”,当然,这些代码段已经实现。 我的pom.xml如下所示: <groupId>Cucumber_Selenium</groupId> <artifactId>Cucumber_Selenium</artifactId> <vers

我的问题如下:我在eclipse中有一个Cucumber和java项目。我可以成功地运行它。但是,当我尝试使用maven运行它时,没有找到任何步骤定义,错误消息是“您可以使用下面的代码段实现缺少的步骤:”,当然,这些代码段已经实现。 我的pom.xml如下所示:

  <groupId>Cucumber_Selenium</groupId>
  <artifactId>Cucumber_Selenium</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>Cucumber_Selenium</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.13</version>
      <scope>test</scope>
    </dependency>
    <dependency>
       <groupId>org.seleniumhq.selenium</groupId>
       <artifactId>selenium-java</artifactId>
       <version>3.141.59</version>
    </dependency>
    <dependency>
       <groupId>io.cucumber</groupId>
       <artifactId>cucumber-java</artifactId>
       <version>5.3.0</version>
    </dependency>
    <dependency>
       <groupId>io.cucumber</groupId>
       <artifactId>cucumber-junit</artifactId>
       <version>5.3.0</version>
       <scope>test</scope>
    </dependency>
    <dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-core</artifactId>
       <version>5.2.3.RELEASE</version>
    </dependency>
    <dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-context</artifactId>
       <version>5.2.3.RELEASE</version>
    </dependency>
    <dependency>
       <groupId>javax.inject</groupId>
       <artifactId>javax.inject</artifactId>
       <version>1</version>
    </dependency>
    <dependency>
       <groupId>io.cucumber</groupId>
       <artifactId>cucumber-picocontainer</artifactId>
       <version>5.3.0</version>
       <scope>test</scope>
    </dependency>
  </dependencies>
</project>
eclipse中项目的结构如下所示:


我将感谢你的帮助,因为我至今没有找到好的解决办法。谢谢

这回答了你的问题吗?不幸的是,它不起作用。胶水添加到pom中了吗?解决方案是这样修改胶水:胶水={“stepsdefinitions”,“common”,“hooks”,“pages”}。写入步骤定义时不应使用绝对路径。其他的都是依赖项,应该用胶水编写,否则会得到io.cucumber.junit.UndefinedStepException。
package runners;

import org.junit.runner.RunWith;
import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;

@RunWith(Cucumber.class)
@CucumberOptions(plugin = {"pretty"}, features = {"src/test/java/features/"}, glue = {"src/test/java/stepsdefinitions"})
public class RunnerTest {
}