Jar 空手道跑步者->空手道罐子:命令行参数设置问题

Jar 空手道跑步者->空手道罐子:命令行参数设置问题,jar,command,line,karate,args,Jar,Command,Line,Karate,Args,我使用的是Visual Studio代码,安装了空手道跑步者插件。将karate-config.js与独立jar karate.jar一起使用。我尝试在空手道跑步者VS代码->空手道jar:Command line args中的空手道跑步者设置中配置为java-Dkarate.config.dir=test/resources/-cp karate.jar com.intuit.karate.Main,但它会引发如下异常 正在执行的任务:java-Dkarate.config.dir=test/

我使用的是Visual Studio代码,安装了空手道跑步者插件。将karate-config.js与独立jar karate.jar一起使用。我尝试在空手道跑步者VS代码->空手道jar:Command line args中的空手道跑步者设置中配置为java-Dkarate.config.dir=test/resources/-cp karate.jar com.intuit.karate.Main,但它会引发如下异常


正在执行的任务:java-Dkarate.config.dir=test/resources/-cp karate.jar com.intuit.karate.Main d:\GitHub\karatestframework\test\features\script\all_users。功能:9这是一个bug。感谢您的报道:

现在,请找到一个解决办法。Karate将在当前目录或类路径中查找Karate-config.js。因此,如果您将命令更改为类似于这样的内容,请尝试使用它

-cp 'karate.jar;test/resources/'

@ChandramohanRamabadran,我试图在我的系统上复制这个问题。我相信这不是虫子

这是因为VisualStudio使用的是PowerShell而不是CMD。我相信你可能错过了通往成功的那一步。尝试那你应该很好

但是,如果仍要使用PowerShell,请更新该命令

java -Dkarate.config.dir=test/resources/ -cp karate.jar com.intuit.karate.Main

关于这个问题的更多背景: PowerShell有一个更标准的规则来解析不同于CMD的系统属性参数。在PowerShell命令中,参数名称始终以连字符开头。连字符告诉PowerShell命令中的项是参数名


这里,我们将参数传递为-Dkarate.config.dir,PowerShell将参数名称标记视为-Dkarate,而不是-Dkarate.config.dir;因此出现了错误。

我已将首选终端外壳从Powershell更改为command作为VS代码的默认值,并遵循以下列出的步骤

按Ctrl+Shift+P以显示所有命令。 在显示的文本框中键入shell以筛选列表。 选择端子:选择默认外壳。 系统将提示您选择首选的端子外壳,您可以稍后在设置中对此进行更改,或者按照与我们现在相同的过程进行操作。 我已经将karate runner->karate jar:Command Line Args设置更改为java-Dkarate.config.dir=resources/-cp karate.jar com.intuit.karate.Main


现在工作正常。

我尝试了上面的命令和不同的变体,但没有成功。解决此错误后,请立即更新我。@ChandramohanRamabadran我建议您花些时间帮助我们解决此问题,这是一个开源项目。我已将首选终端外壳从Powershell更改为VS代码的默认命令,并按照下面列出的步骤1按Ctrl+Shift+P显示所有命令。2在显示的文本框中键入shell以筛选列表。3选择端子:选择默认外壳。4系统将提示您选择首选的端子外壳,您可以稍后在设置中更改此选项,或按照与我们现在相同的过程进行操作。我已经将karate runner->karate jar:Command Line Args设置更改为java-Dkarate.config.dir=resources/-cp karate.jar com.intuit.karate.Main
java `-Dkarate.config.dir`=test/resources/ -cp karate.jar com.intuit.karate.Main