在Scala中将命令和参数获取为字符串

在Scala中将命令和参数获取为字符串,scala,Scala,一个可以打包为jar的小程序,您可以在控制台中这样运行它: scala program.jar -v --debug --file "/home/user/..." 有没有办法将所有参数作为字符串获取整个命令 object Main { def main(args: Array[String]): Unit = { println("???") // should print: "scala program.jar -v --debug --file

一个可以打包为jar的小程序,您可以在控制台中这样运行它:

scala program.jar -v --debug --file "/home/user/..."
有没有办法将所有参数作为字符串获取整个命令

object Main {
    def main(args: Array[String]): Unit = {
        println("???")  
        // should print: "scala program.jar -v --debug --file "/home/user/..."
    }    
}

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

例:


您无法可靠地获得完整的命令行(请参见),但可以接近

object Main {
  def main(args: Array[String]): Unit = {
    val allargs = "scala" +: System.getProperty("sun.java.command").split(" ").tail
    println(allargs.mkString(" "))
  }    
}
使用
“scala program.jar”+args.mkString(“”
)。您已经知道,第一个命令总是
scala program.jar
object Main {
  def main(args: Array[String]): Unit = {
    val allargs = "scala" +: System.getProperty("sun.java.command").split(" ").tail
    println(allargs.mkString(" "))
  }    
}