在 Gradle,有没有更好的方法获得环境变量?

在几个任务中,我在主文件夹中引用罐子。

获取环境变量的方法是否比

ENV = System.getenv()
HOME = ENV['HOME']


task copyToServer(dependsOn: 'jar', type: Copy) {


from 'build/libs/'
into HOME + "/something/plugins/"
}

这设置了 $HOME,但是我希望我错过了文档中的一些魔法。

191443 次浏览

这个也可以:

home = "$System.env.HOME"

不清楚你的目标是什么。

我无法使用@thoredge 建议的表格在 Gradle 工作1.11,但这个方法对我很有效:

home = System.getenv('HOME')

这有助于我们记住,任何纯爪哇语的东西在 Gradle 都可以用。

在 android 等级0.4.0中,你可以这样做:

println System.env.HOME

Build: gradle-實驗: 0.4.0

这是针对 Kotlin DSL(build.gradle.kts)的:

val myVariable = System.getenv("MY_VARIABLE_NAME") ?: "my default value"

或者

val myVariable = System.getenv("MY_VARIABLE_NAME") ?: error("Env variable not found")

或者

val environment = System.getenv()
val myVariable = environment["MY_VARIABLE_NAME"] ?: "my default value"
// OR val myVariable = environment["MY_VARIABLE_NAME"] ?: error("Env variable not found")