Как прочитать переменную среды в Kotlin?
Я хотел бы получить определенное значение из переменной среды в моем приложении Kotlin, но я не могу найти ничего о чтении переменных среды в основные библиотеки документация.
Я ожидал, что он будет под Котлин.система но там действительно не так много.
4 ответов
очень легко получить значение среды, если оно существует, или значение по умолчанию с помощью оператора elvis в kotlin:
var envVar: String = System.getenv("varname") ?: "default_value"
вы всегда можете спуститься по этому подходу:
val envVar : String? = System.getenv("varname")
хотя, честно говоря, это не кажется особенно идиоматичным, поскольку вы используете системный класс Java, а не Котлина.
мой любимый однострочный:
val myEnv = if (System.getenv("MY_ENV").isNullOrEmpty()) "default_value" else System.getenv("MY_ENV")
вы можете использовать расширение kotlin Konfig
Konfig-тип Безопасный API конфигурации для Kotlin
Konfig предоставляет расширяемый, типобезопасный API для свойств конфигурации, собранных из нескольких источников-встроенные ресурсы, системные свойства, файлы свойств, переменные среды, аргументы командной строки и т. д.
например: Key("http.port", intType)