In mehreren Aufgaben verweise ich auf Gläser in meinem Home-Ordner.
Gibt es einen besseren Weg, um Umgebungsvariablen zu erhalten als
ENV = System.getenv()
HOME = ENV['HOME']
task copyToServer(dependsOn: 'jar', type: Copy) {
from 'build/libs/'
into HOME + "/something/plugins/"
}
Dies setzt $ HOME, aber ich hatte gehofft, dass ich etwas Magie aus der Dokumentation verpasst habe.
$ export FOO=bar
.def HOME
: Gradle 4.4.1Project
hat keineHOME
Eigenschaft oderENV
Eigenschaft. Könnte etwas sein, das herausgefallen ist ...?Antworten:
Gut; das funktioniert auch:
Es ist nicht klar, was Sie anstreben.
quelle
System.getenv('VAR')
die null zurückgibt, wenn sie nicht zugewiesen wird. Wenn Sie verwenden"$System.env.VAR"
, wird die Zeichenfolge zurückgegeben"null"
.def home
: Gradle 4.4.1Project
hat keinehome
Eigenschaft. Könnte etwas sein, das herausgefallen ist ...?Ich konnte das von @thoredge vorgeschlagene Formular nicht für Gradle 1.11 verwenden, aber das funktioniert für mich:
Es ist zu beachten, dass alles, was in reinem Java funktioniert, auch in Gradle funktioniert.
quelle
System.getenv('HOME')
Version für mich arbeiten lassen. Die andere Version kehrte immer wieder zurücknull
null
anstatt für den"null"
Fall, dass es nicht existiert.In Android Gradle 0.4.0 können Sie einfach tun:
Klassenpfad com.android.tools.build:gradle-experimental:0.4.0
quelle