我有一个相当粗略的任务,在gradle项目上运行任务:
def testProject(proj) {
// test project task runs without error
try {
GradleRunner.create()
.withProjectDir(file("./examples/${proj}/"))
.withArguments('Example')
.forwardOutput()
.build()
} catch (Exception e) {
println "Test failed ./examples/${proj}"
return
}
println "Test passed ./examples/${proj}"
}
task baseTest << {
println "Running base tests"
[
'WebHdfsLs',
'WebHdfsMkdir',
// other tests omitted for brevity
].each() { proj -> buildProject(proj) }
}
但是,如果某些项目失败,它们将无限期地挂起,等待服务器的响应。
如何使用GradleRunner引入超时来中止构建?