小编Edu*_*ard的帖子

Gradle 拒绝启动进程命令“cmd”

我遇到了自定义 gradle 任务的问题。似乎 gradle 拒绝启动命令行进程。

这是自定义任务:

task generateAllure(type: Exec) {
    workingDir "$projectDir/allure/bin"
    if (System.getProperty('os.name').toLowerCase(Locale.ROOT).contains('windows')) {
        commandLine 'cmd', '/c', 'allure.bat', 'generate', '-c', '../../integration/build/allure-results'
    } else {
        commandLine 'bash', '-c', 'allure', 'generate', '-c',"$projectDir/integration/build/allure-results"
    }
}

tasks.withType(Test)*.finalizedBy generateAllure
Run Code Online (Sandbox Code Playgroud)

具有适当的依赖关系:

compile group: 'ru.yandex.qatools.allure', name: 'allure-commandline', version: '1.4.18'
Run Code Online (Sandbox Code Playgroud)

使用后gradle clean test执行失败:

2: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':generateAllure'.
> A problem occurred starting process 'command 'cmd''
Run Code Online (Sandbox Code Playgroud)

对此有什么想法吗?谢谢!

UPD:这是我执行 gradle -S clean 测试后得到的堆栈跟踪:

* Exception …
Run Code Online (Sandbox Code Playgroud)

testing groovy cmd gradle allure

6
推荐指数
1
解决办法
2万
查看次数

Java String.contains 与 String.contentEquals

这两种方法之间的真正区别是什么?\ntrue如果字符串包含CharSequence给定参数,则两者具有相同的签名,并且返回false,如果不包含\xe2\x80\x99t。

\n\n

方法:

\n\n
boolean contains(CharSequence string)\n\nboolean contentEquals(CharSequence string)\n
Run Code Online (Sandbox Code Playgroud)\n

java

1
推荐指数
1
解决办法
3630
查看次数

标签 统计

allure ×1

cmd ×1

gradle ×1

groovy ×1

java ×1

testing ×1