Propere Möglichkeit zur Verwendung von Systemumgebungsvariablen in Gradle mit Android Studio
Ich benutze Android Studio, um mein Projekt auf einem Ubuntu 14.04-System zu erstellen.
Ich habe Folgendes in meine build.gradle-Dateien geschrieben, um das Hardcodieren von storeFile, storePassword, keyAlias und keyPassword in meinem Git-Repo zu vermeiden:
signingConfigs {
debug {
storeFile file(System.getenv("KEYSTORE"))
storePassword System.getenv("KEYSTORE_PASSWORD")
keyAlias System.getenv("KEY_ALIAS")
keyPassword System.getenv("KEY_PASSWORD")
}
Aber Gradle-Synchronisierungsfehler treten mit folgenden Fehlern auf:Error:(49, 0) Neither path nor baseDir may be null or empty string. path='null' basedir='./pathto/TMessagesProj'
Meine .bashrc enthält:source ~/.gradlerc
und mein ~ / .gradlerc enthält Folgendes:
export KEYSTORE="/home/myname/keystore/mykey"
export KEYSTORE_PASSWORD='mypass'
export KEY_ALIAS='mykey'
export KEY_PASSWORD='keypass'
Ich habe bestätigt, dass diese Variablen von der Shell korrekt importiert werden. Ich bin mir jedoch nicht sicher, warum es von der Build-Umgebung in Android Studio nicht empfangen wird.
Wie werden Umgebungsvariablen in gradle richtig verwendet?