Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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
Cucumber kotlin:通过Intellij启动测试时出现非法状态异常_Kotlin_Exception_Intellij Idea_Cucumber_Cucumber Java - Fatal编程技术网

Cucumber kotlin:通过Intellij启动测试时出现非法状态异常

Cucumber kotlin:通过Intellij启动测试时出现非法状态异常,kotlin,exception,intellij-idea,cucumber,cucumber-java,Kotlin,Exception,Intellij Idea,Cucumber,Cucumber Java,我正试图通过intellij发布一个Cumber(用kotlin编写) 我有一个步骤定义类,描述如下: 当我从Intellij启动测试时,我在“给定”方法上有一个异常:java.lang.IllegalStateException:可以在BusinessEventSteps解析lambda的返回类型。kt:19 从命令行使用“mvn clean install”时,测试运行良好 我的环境: 马科斯 Coretto 11.0.11 Intellij 2021.1.1 Kotlin 1.4.1

我正试图通过intellij发布一个Cumber(用kotlin编写)

我有一个步骤定义类,描述如下:

当我从Intellij启动测试时,我在“给定”方法上有一个异常:java.lang.IllegalStateException:可以在BusinessEventSteps解析lambda的返回类型。kt:19

从命令行使用“mvn clean install”时,测试运行良好

我的环境:

  • 马科斯
  • Coretto 11.0.11
  • Intellij 2021.1.1
  • Kotlin 1.4.10
  • 黄瓜6.10.4
    • 找到了一个解决方法。 这个问题似乎与本机Intellij编译器有关。编辑运行/调试配置并用maven目标替换默认的“构建”步骤,一切正常

      希望这能帮助别人


      Cucumber在恒定池中捕鱼,以确定lambda的类型。看起来Correto有一个意外的布局。我怀疑这个问题能否轻易解决,或者根本无法解决。这意味着你必须将
      cucumber-java
      与Kotlin一起使用,而不是
      cucumber-java8
      。奇怪的是,它在命令行中使用mvn工作,在collegue的PC上也能工作,我看到的唯一区别是他在Windows上。所以我不确定它是否与cucumber库有关,这取决于所使用的JVM。您的IDE、maven和同事可能正在使用不同的JVM。您可以将您的解决方案作为答案发布。而不是一条线索,除了我所说的之外,还有其他原因。Cucumber Java8取决于JVM中的实现细节。如果这个想法在这些细节上不匹配,它就不会起作用