def main(args: Array[String]): Unit
Run Code Online (Sandbox Code Playgroud)
通常,应用程序需要在退出时指定返回代码.如果main返回Unit,那通常如何在scala中完成?我应该调用System.exit(n)吗?
此外,文档警告我不应该使用main,尽管这似乎与入门指南不一致).
这里的最佳做法是什么?
0__*_*0__ 22
是的,通过调用java.lang.System.exit(n)或更好sys.exit(n)(这是Scala的等价物)退出时,代码不等于零.
如果App在主应用程序对象中混入,则不定义方法,main但可以直接在对象的主体中写入其内容.
例如
object Test extends App {
val a0 = args.headOption.getOrElse {
Console.err.println("Need an argument")
sys.exit(1)
}
println("Yo " + a0)
// implicit: sys.exit(0)
}
Run Code Online (Sandbox Code Playgroud)