2017-03-02 82 views
0

我目前使用gmaven plus在maven内部运行groovy命令。调用groovy执行跨平台

的命令(例如着想)将

git help 

如果我在linux上运行它,我可以做的:

'git help'.execute().text.trim() 

然而,这并不工作在Windows上。相反,我需要做的:

'cmd /C git help'.execute().text.trim() 

有没有跨平台的方式做到这一点?

+1

我能做到'。'混帐help'.execute()看看。text.trim()'罚款Windows上的Groovy的外壳。也许尝试一下,如果它使用普通的Groovy shell在Maven之外工作。 – Vampire

+0

我做了,我下载并运行groovysh并得到了这个问题。它运行良好,当我从git bash或从cygwin运行它,但不是从纯命令提示符(没有尝试电源外壳)。问题是,大多数团队在linux或mac OS上工作,并且有一些在vanila命令提示符上运行,所以我需要它在两种环境中工作 –

回答

0

看到它为别人工作让我思考,实际上问题出在我自己的PATH配置上;

很显然,如果你在路径定义的git如下:

"C:\Program Files (x86)\Git\bin" 

然后从命令运行时,它会找到饭桶。然而,groovy不会找到它。

在另一方面,如果你在路径定义的git如下:

C:\Program Files (x86)\Git\bin 

即不“”。然后一切正常。

https://serverfault.com/questions/349179/path-variable-and-quotation-marks-windows