Java 升级后运行测试时出现问题

Java 升级后运行测试时出现问题,java,intellij-idea,cucumber,Java,Intellij Idea,Cucumber,IntelliJ Java 黄瓜 升级到Cucumber的最新版本后,我的测试将不再运行。我在这里来回奔波,毫无疑问地证实了问题是在Cucumber升级之后出现的 当尝试在IntelliJ中本地运行Cucumber测试场景时,我得到以下结果: No tests were found 以及以下警告和错误: Aug 28, 2019 10:02:00 AM cucumber.api.cli.Main run WARNING: You are using deprecated Main class.

IntelliJ
Java
黄瓜

升级到Cucumber的最新版本后,我的测试将不再运行。我在这里来回奔波,毫无疑问地证实了问题是在Cucumber升级之后出现的

当尝试在IntelliJ中本地运行Cucumber测试场景时,我得到以下结果:

No tests were found
以及以下警告和错误:

Aug 28, 2019 10:02:00 AM cucumber.api.cli.Main run
WARNING: You are using deprecated Main class. Please use  io.cucumber.core.api.cli.Main
Aug 28, 2019 10:02:02 AM cucumber.runtime.Runtime run
SEVERE: Exception while executing pickle
java.util.concurrent.ExecutionException:  
java.lang.IncompatibleClassChangeError: Found interface cucumber.api.TestCase, but class was expected 
    at cucumber.runtime.Runtime.run(Runtime.java:114)
    at io.cucumber.core.cli.Main.run(Main.java:43)
    at cucumber.api.cli.Main.run(Main.java:28)
    at cucumber.api.cli.Main.main(Main.java:15)
这仅在我尝试直接/手动运行测试场景时出现。也就是说,右键单击场景并选择“运行”或“调试”

我已清除缓存并重新启动,没有任何更改。我还更改了CucumberTest类中的导入:

//import cucumber.api.CucumberOptions;
import io.cucumber.junit.CucumberOptions;
//import cucumber.api.junit.Cucumber;
import io.cucumber.junit.Cucumber;

有什么想法吗?我意识到错误消息意味着从编译时到运行时发生了一些变化,cucumber.api.TestCase似乎从一个类到另一个接口。但我无法理解它,也无法找到它发生的地方。

我在Windows上使用IntelliJ、Java和Cucumber时也遇到过类似的问题。JetBrains上有一个bug报告,建议在将
Shorten命令行
选项设置为
JAR清单
的同时运行测试来解决这个问题。这对我有用


您是否使用runner类进行测试?您是否更新了IDEA和cucumber插件?是的。根据概述,没有遗漏更新。