En Java, la lectura de variables de entorno se realiza con System.getenv()
.
¿Hay alguna manera de hacer esto en Scala?
scala
environment-variables
bombilla de verano
fuente
fuente
sys.env.get("VARIABLE")
que le daráOption[String]
un error en lugar de arrojar un error si falta esa variable.sys.env
es solo unMap
. Puedes hacer cualquier método que sea apropiado para ti.sys.env.getOrElse("VARIABLE", "default value")
También fue útil en mi caso donde la variable de entorno puede no estar definida.Hay un objeto:
Esto tiene una colección de métodos que se pueden utilizar para obtener información del entorno, incluyendo
fuente
Mismo camino:
fuente
Usando directamente un valor predeterminado con
getOrElse
sobre elsys.env
Mapa (val myenv: Map[String, String] = sys.env
):Obtiene el contenido de
envVariable
o, si no existe, eldefaultValue
.fuente
Si se usa la biblioteca de configuración de Lightbend (por defecto en Play2 y Akka), puede usar
foo = "default value" foo = ${?VAR_NAME}
sintaxis para anular foo si existe una variable de entorno VAR_NAME. Más detalles en https://github.com/typesafehub/config#optional-system-or-env-variable-overrides
fuente
Para imprimir todas las variables de entorno, puede usar
fuente
error: missing parameter type
en los argumentos si solo copia y pega esto.(name: String, value: String)
, estoy obteniendoerror: type mismatch; found : (String, String) => Unit required: java.util.function.BiConsumer[_ >: String, _ >: String]
.