Scala sys.env用于未定义的环境变量

elm*_*elm 2 scala environment-variables

这个表达

sys.env("HOME")
Run Code Online (Sandbox Code Playgroud)

传递到主文件夹的路径; 通常sys.env("EnvVar")提供与之相关的价值$EnvVar.但是,对于$LIB未声明的环境变量

java.util.NoSuchElementException: key not found: LIB
Run Code Online (Sandbox Code Playgroud)

如何确定是否声明变量而不必捕获异常?

Ion*_*tan 12

sys.env是一个Map,所以你可以调用它的get方法,它返回一个Option:

scala> sys.env.get("FOO")
res0: Option[String] = None
Run Code Online (Sandbox Code Playgroud)


use*_*379 5

你可以试试这个:

  val value = sys.env.get("EnvVar")

  println(value.getOrElse("Your default value"))
Run Code Online (Sandbox Code Playgroud)