【问题标题】:I have this error with cucumber when running the runner"java.lang.NoClassDefFoundError: io/cucumber/messages/Messages$JavaMethod"运行运行程序“java.lang.NoClassDefFoundError: io/cucumber/messages/Messages$JavaMethod”时,黄瓜出现此错误
【发布时间】:2020-08-11 14:01:52
【问题描述】:
FAILED: runScenario("Register To website", "Optional[User Registration]")
        Runs Cucumber Scenarios
java.lang.NoClassDefFoundError: io/cucumber/messages/Messages$JavaMethod
    at io.cucumber.core.runner.CachingGlue.createSourceReference(CachingGlue.java:303)
    at io.cucumber.core.runner.CachingGlue.lambda$emitStepDefined$5(CachingGlue.java:293)
    at java.util.Optional.ifPresent(Unknown Source)
    at io.cucumber.core.runner.CachingGlue.emitStepDefined(CachingGlue.java:293)
    at io.cucumber.core.runner.CachingGlue.lambda$prepareGlue$3(CachingGlue.java:252)
    at java.util.ArrayList.forEach(Unknown Source)
    at io.cucumber.core.runner.CachingGlue.prepareGlue(CachingGlue.java:243)
    at io.cucumber.core.runner.Runner.runPickle(Runner.java:68)

使用 BDD 和 java 运行 cucumber 时出现此错误
[1]:https://i.stack.imgur.com/8VgxW.png [2]:https://i.stack.imgur.com/h8SSv.png [3]:https://i.stack.imgur.com/R5WqZ.png

更新: 我将这个依赖项用于 Cucumber 有什么问题

    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-testng</artifactId>
        <version>6.4.0</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-core</artifactId>
        <version>6.4.0</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>6.4.0</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>gherkin</artifactId>
        <version>15.0.0</version>
    </dependency>

【问题讨论】:

  • 请不要使用截图。
  • 并检查您的依赖关系。他们错了。
  • @M.P.Korstanje 我添加了依赖项你能帮我吗?这是错误的谢谢
  • 你可以使用mvn dependency:tree -Dverbose=true
  • @M.P.Korstanje 非常感谢,但我搜索并通过更改依赖项的版本来解决。

标签: java selenium cucumber bdd


【解决方案1】:

我降级了依赖项然后它工作了,因为我使用 java 8 我的参考是黄瓜docs

<dependency>
        <groupId>com.github.javafaker</groupId>
        <artifactId>javafaker</artifactId>
        <version>1.0.2</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-testng</artifactId>
        <version>6.2.0</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-core</artifactId>
        <version>6.2.0</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>6.2.0</version>
    </dependency>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-26
    • 1970-01-01
    • 1970-01-01
    • 2018-07-08
    • 1970-01-01
    • 1970-01-01
    • 2020-09-07
    相关资源
    最近更新 更多