1

我正在尝试在 Windows 上使用 groovy 脚本自动化我的一些工作。我认为这将是学习 groovy 的一个很好的开始。大多数部分我使用 groovy 来执行繁琐的 CMD 命令,但是我很少发出让我烦恼的问题。

第一个是我找不到终止 groovy 脚本的方法说:

if (!new File('c:\\myDir').exists)

秒 - 问题

"cmd /c doStuff".execute()

现在我读到这是在 CMD 上执行命令的好方法,但我在源代码中达到了顶峰,每个 'execute()' 方法都被标记为已弃用,但我最大的问题是我似乎无法弄清楚如何实时流式传输结果,例如:

println 'cmd /c mvn clean install'.execute(null, new File('sourcePath')).text 

此语句仅在整个构建完成后打印出结果。那么有什么解决方案吗?

谢谢。

4

1 回答 1

3

尝试:

def p = 'cmd /c mvn clean install'.execute(null, new File('sourcePath'))
p.consumeProcessOutput( System.out, System.out )
p.waitFor()
于 2013-09-09T08:07:43.020 回答