如何在Kotlin中读取环境变量?

时间:2017-06-02 03:55:16

标签: environment-variables kotlin

我想从我的Kotlin应用程序中的环境变量中获取某个值,但我在core libraries文档中找不到任何有关读取环境变量的信息。

我希望它在kotlin.system之下,但那里确实没那么多。

4 个答案:

答案 0 :(得分:22)

通过在kotlin中使用elvis运算符来获取环境值(如果存在)或默认值非常容易:

var envVar: String = System.getenv("varname") ?: "default_value"

答案 1 :(得分:15)

你总是可以采用这种方法:

val envVar : String? = System.getenv("varname")

虽然,公平地说,这并不是特别惯用,因为你正在利用Java的系统类,而不是Kotlin的。

答案 2 :(得分:2)

我最喜欢的单行是:

val myEnv = if (System.getenv("MY_ENV").isNullOrEmpty()) "default_value" else System.getenv("MY_ENV")

答案 3 :(得分:1)

您可以使用kotlin扩展名Konfig

Konfig - A Type Safe Configuration API for Kotlin

Konfig为从多个源收集的配置属性提供了可扩展的,类型安全的API - 内置资源,系统属性,属性文件,环境变量,命令行参数等。

例如:Key("http.port", intType)