2017-10-12 98 views
0

我想在斯卡拉執行命令,但我得到一個錯誤斯卡拉進程生成

s"git --git-dir ${repository.localLocation.get.path}/.git log --format='%h %at %s' --no-decorate" !! 

我得到一個錯誤,退出狀態:

java.lang.RuntimeException: Nonzero exit value: 128 
at scala.sys.package$.error(package.scala:27) 
at scala.sys.process.ProcessBuilderImpl$AbstractBuilder.$bang$bang(ProcessBuilderImpl.scala:134) 

但是,當我「M通過終端運行此它完美的作品:

git --git-dir='/var/folders/mk/dc2mnd7x3db1hnqm0vfg6b800000gn/T/XXHMjm7178261334218603127.tmp/.git' log --format='%h %at %s' 

如果我只能留下一個部分,它工作正常。

任何人都可以幫助我嗎?

回答

1

您應該使用Seq[String]變體,因爲您的參數中有可能用於錯誤分隔參數的空格字符。嘗試

Seq("git", "--git-dir", s"${repository.localLocation.get.path}/.git", 
    "log", "--format='%h %at %s'", "--no-decorate").!! 

另請注意,您將在輸出中看到單個滴答聲。您可能需要"--format=%h %at %s"