Java:package cucumber.api.junit不存在

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java:package cucumber.api.junit不存在相关的知识,希望对你有一定的参考价值。

我一直试图让这个工作。

我想建立一个测试跑步者类like so

但是我收到此错误:

错误:(3,26)java:package cucumber.api.junit不存在 错误:(10,10)java:找不到符号 符号:类黄瓜

该课程如下:

package nl.prvgld.sigma.aanvraagtitels.testutil;

import cucumber.api.junit.Cucumber;
import org.junit.runner.RunWith;

@RunWith(Cucumber.class)
public class RunFeature {
}

Pom.xml看起来像:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
  <modelVersion>4.0.0</modelVersion>
  <groupId>nl.prvgld.sigma.aanvraagtitels</groupId>
  <artifactId>Aanvraagtitels</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>Aanvraagtitels</name>
  <url>http://maven.apache.org</url>
  <dependencies>
      <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
      <dependency>
          <groupId>org.seleniumhq.selenium</groupId>
          <artifactId>selenium-java</artifactId>
          <version>3.2.0</version>
      </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
        <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-java -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-java8</artifactId>
        <version>1.2.5</version>
    </dependency>
      <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-core -->
      <dependency>
          <groupId>info.cukes</groupId>
          <artifactId>cucumber-core</artifactId>
          <version>1.2.5</version>
          <scope>test</scope>
      </dependency>
      <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-junit -->
      <dependency>
          <groupId>info.cukes</groupId>
          <artifactId>cucumber-junit</artifactId>
          <version>1.2.5</version>
      </dependency>

      <!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc -->
      <dependency>
          <groupId>com.microsoft.sqlserver</groupId>
          <artifactId>mssql-jdbc</artifactId>
          <version>6.1.0.jre8</version>
      </dependency>
      <dependency>
          <groupId>com.smartbear.readyapi.testserver.cucumber</groupId>
          <artifactId>testserver-cucumber-core</artifactId>
          <version>1.0.0</version>
          <scope>test</scope>
      </dependency>


  </dependencies>
</project>

所有类都在Test文件夹下。我一直在寻找一些相关的问题并尝试解决方案,比如从Pom中删除测试,并确保我在Pom中有junit,cucumber-junit,cucumber-java8和cucumber-core。

我正在使用Intellij。

任何正确方向的帮助都非常感谢!

干杯!

答案

通过检查,一切看起来都很好。但很明显,它并不像你期望的那样有效。

在使用IDEA进行编译并使用Maven进行编译时,是否会出现相同的错误?

首先,我将从Cucumber团队克隆一个入门项目并使其正常运行。稍后扩展它以包含您需要的东西要容易得多。克隆https://github.com/cucumber/cucumber-java-skeleton并使用Maven构建它

mvn clean install

预计它将开箱即用。

通过一个有效的解决方案,向您实际想要的项目迈出一小步。

另一答案

我不知道您是否已经解决了问题,但可以通过从pom.xml文件中删除范围标记来快速解决问题。对您遇到问题的所有依赖项执行此操作,并且应该可以正常工作。

干杯,HH

以上是关于Java:package cucumber.api.junit不存在的主要内容,如果未能解决你的问题,请参考以下文章

java 中 package 是啥?

java的package的名字可以使用数字么

Java_package和 import详解

java中不带package和带package的编译运行方式

JavaEE中package-info如何解除

Java package-info.java文件使用学习