如何使用“执行”便携式制作groovy脚本?

时间:2015-12-11 09:56:51

标签: groovy

我有一个用于考试的groovyscript

"mvn install".execute()

虽然这在linux上运行良好,但在windows上会失败。在Windows上,你必须写:

"cmd /C mvn install".execute()

这有点令人讨厌。我只想使用if OS == windows then来避免混乱我的代码。我很确定有人已经解决了这个问题并为此提供了一些库。我找不到任何东西......

1 个答案:

答案 0 :(得分:1)

由于String.execute()委托给操作系统,因此它不应该是可移植的,但您可以创建自己的便携式等效设备。

String.metaClass.pexecute = {
    if(/* Windows OS check goes here*/) {
        "cmd /C $delegate".execute()
    } else {
        delegate.execute()
    }
}

在脚本的早期放置此代码,您可以这样调用String.pexecute()"mvn install".pexecute()