在Scala中将命令和参数作为String获取

时间:2017-01-18 10:46:00

标签: scala

一个小程序,可以打包为jar,然后在控制台中运行它,如下所示:

c:\Users\jonathan\AppData\Local\MyCompany\MyApp_In_Question_Url_aaabf35hhsjd4hkwn83kfcm

有没有办法将所有参数作为String获取整个命令?

scala program.jar -v --debug --file "/home/user/..."

2 个答案:

答案 0 :(得分:0)

使用mkstring数组方法。作为参数,您可以在数组实体之间放置分隔符。

Ex:http://ideone.com/

val argss = Array("a", "b", "c --d")
println(argss.mkString(" "))

答案 1 :(得分:0)

您无法可靠地获得完整的命令行(请参阅this discussion),但您可以近距离接触。

object Main {
  def main(args: Array[String]): Unit = {
    val allargs = "scala" +: System.getProperty("sun.java.command").split(" ").tail
    println(allargs.mkString(" "))
  }    
}