En Java, la lecture des variables d'environnement se fait avec System.getenv()
.
Y a-t-il un moyen de faire cela dans Scala?
scala
environment-variables
ampoule d'été
la source
la source
sys.env.get("VARIABLE")
ce qui vous donneraOption[String]
une erreur plutôt que de lancer une erreur si cette variable est manquante.sys.env
c'est juste unMap
. Vous pouvez utiliser la méthode qui vous convient.sys.env.getOrElse("VARIABLE", "default value")
était également utile dans mon cas où la variable d'environnement peut ne pas être définie.Il y a un objet:
cela a une collection de méthodes qui peuvent être utilisées pour obtenir des informations sur l'environnement, y compris
la source
De la même façon:
la source
En utilisant directement une valeur par défaut avec
getOrElse
sur lasys.env
carte (val myenv: Map[String, String] = sys.env
):Vous obtenez le contenu du
envVariable
ou, s'il n'existe pas, ledefaultValue
.la source
Si la bibliothèque de configuration de Lightbend est utilisée (par défaut dans Play2 et Akka), vous pouvez utiliser
foo = "default value" foo = ${?VAR_NAME}
syntaxe pour remplacer foo si une variable d'environnement VAR_NAME existe. Plus de détails sur https://github.com/typesafehub/config#optional-system-or-env-variable-overrides
la source
Pour imprimer toutes les variables d'environnement, vous pouvez utiliser
la source
error: missing parameter type
sur les arguments si vous venez de copier-coller ceci.(name: String, value: String)
, je reçoiserror: type mismatch; found : (String, String) => Unit required: java.util.function.BiConsumer[_ >: String, _ >: String]
.