2011-01-04 5 views

risposta

20

Le variabili di ambiente e le proprietà non sono la stessa cosa. Se si desidera passare a una variabile d'ambiente come proprietà è necessario aggiungere quanto segue al invocazione java:

-DTOOLS_DIR = $ TOOLS_DIR

In alternativa, è possibile utilizzare System.getenv().

+0

Grazie ho avuto lo stesso problema oggi. – Hemant

6

Le proprietà del sistema Java non hanno nulla a che fare con le variabili di ambiente shell.

È possibile assegnare una proprietà di sistema Java quando si richiama la macchina virtuale, ad esempio:

java -DTOOLS_DIR=/somewhere org.example.MyClass 
3

Prova a modificare:

String toolsDir = System.getenv("TOOLS_DIR"); 

Il getProperty (...) restituisce Java VM proprietà (come user.dir, java.version). Il metodo getenv (...) è per le variabili di ambiente.