Ich versuche System.getenv()
, um den Wert einer Umgebungsvariablen zu erhalten, die ich über mein Terminal (Mac) eingestellt habe, setze ich auch die Variable in meiner .bash_profile Datei und neu geladen. Nachdem ich dies getan hatte, echote ich den Wert und der korrekte Wert wurde auf das Terminal gedruckt. Beim Versuch, den Wert der Variablen abzurufen (ich sicher habe ich in meinen beiden .bash_profile-Datei den richtigen Namen verwenden und bei der Verwendung von System.getenv()
.System.getenv() gibt null zurück, wenn die Umgebungsvariable existiert
Im folgenden Code habe ich den Namen der Variablen mit VAR_NAME ersetzt:
String varValue = System.getenv("VAR_NAME");
System.out.println("Value: " + varValue);
In meinem Bash_profile.
export VAR_NAME="foo"
"null" gedruckt wird, wenn ich den Wert von varValue
auszudrucken
Was könnte die Ursache dafür sein?
Bearbeiten: Ich folgte der Top-Antwort here, neu gestartet Eclipse und es hat funktioniert!
Wie läuft die Anwendung? Ist 'printenv | grep VAR_NAME' in deiner Shell zeige den Wert? –
Es tut, und ich führe es durch Eclipse @EtanReisner – SamTebbs33
Sie führen Ihren Shell-Befehl in Eclipse? – RealSkeptic