Sto provando a System.getenv()
per ottenere il valore di una variabile di ambiente che ho impostato tramite il mio terminale (Mac), ho anche impostato la variabile nel mio file .bash_profile e ricaricato. Dopo averlo fatto, ho fatto eco al valore e il valore corretto è stato stampato sul terminale. Quando si cerca di recuperare il valore della variabile (ho fatto in modo che stavo usando il nome corretto sia nel mio file .bash_profile e quando si usa System.getenv()
.System.getenv() restituisce null quando esiste la variabile di ambiente
Nel codice qui sotto, ho sostituito il nome della variabile con nome_var:
String varValue = System.getenv("VAR_NAME");
System.out.println("Value: " + varValue);
Nel mio .bash_profile:.
export VAR_NAME="foo"
"null" viene stampato quando si stampa il valore di varValue
Quale potrebbe essere la causa di questo?
Modifica: Ho seguito la risposta principale here, riavviato Eclipse e ha funzionato!
Come si esegue l'applicazione? 'Printenv | grep VAR_NAME' nella tua shell mostra il valore? –
Lo fa e lo sto eseguendo tramite Eclipse @EtanReisner – SamTebbs33
Stai eseguendo il comando shell in Eclipse? – RealSkeptic