我想從我的Kotlin應用程序中的環境變量中獲得一定的值,但在core libraries文檔中找不到有關讀取環境變量的任何內容。如何讀取Kotlin中的環境變量?
我期望它在kotlin.system之下,但那裏真的沒那麼多。
我想從我的Kotlin應用程序中的環境變量中獲得一定的值,但在core libraries文檔中找不到有關讀取環境變量的任何內容。如何讀取Kotlin中的環境變量?
我期望它在kotlin.system之下,但那裏真的沒那麼多。
可以使用科特林擴展Konfig
Konfig - A Type Safe Configuration API for Kotlin
Konfig提供了一個可擴展的配置屬性類型安全的API從多個來源收集 - 內置的資源,系統屬性,屬性文件,環境變量,命令行參數等
是的,我們如何使用envs?沒有文檔? – PedroD
你總是可以走這條途徑:
val envVar : String? = System.getenv("varname")
雖然,公平地說,這並不是特別習慣,因爲你正在利用Java的System類,而不是Kotlin的。
「利用Java的系統類」沒有任何問題。 Kotlin非常重視Java interop,並且當您針對JVM時,它有望使用Java API。 –
我最喜歡的一個班輪是:
val myEnv = if (System.getenv("MY_ENV").isNullOrEmpty()) "default_value" else System.getenv("MY_ENV")
這是很容易,如果它存在,或通過在科特林使用Elvis操作符的默認值來獲得一個環境值:
var envVar: String = System.getenv("varname") ?: "default_value"
你有沒有嘗試System.getenv? – danielspaniol
我沒有。我猜想,當搜索「我如何在Kotlin中執行X」並沒有找到我想要的答案時,那麼搜索「如何在Java中執行X」可能會產生可用的結果。 – Bjornicus
@Bjornicus你絕對是關鍵。 JVM上的Kotlin可以訪問所有Java的API。 –