public static String getenv( String name );
CLASSPATH
qui indique à l'environnement d'exécution Java ou se trouvent
les dossiers complémentaires pouvant contenir du code Java.
true
.
1 2 3 |
String upperName = System.getenv("PATH"); String lowerName = System.getenv("path"); System.out.println( upperName.equals( lowerName ) ); |
Les concepts de variables d'environnement et de propriétés d'environnement sont en fait très proches. Une propriété d'environnement, un concept purement Java, correspond aussi à une configuration, mais le nom d'une telle propriété est spécifié par Java et est case-sensitive. Ainsi, on retrouvera les mêmes propriétés quel que soit le système d'exploitation considéré, contrairement aux variables d'environnement. De plus, la valeur d'une propriété d'environnement, bien qu'issue la plupart du temps d'une variable d'environnement, est souvent, elle aussi, indépendante du système considéré.
Tant que possible, il est donc vivement conseillé d'utiliser les propriétés d'environnement au profit des variables d'environnement.
RuntimePermission
pourra être déclenchée.
Paramètre | Type | Description |
---|---|---|
name |
String |
le nom de la variable d'environnement à retrouver. |
La valeur de retour est de type String
. null
Type de l'exception | Description |
---|---|
NullPointerException |
Une exception de ce type sera déclenchée si le paramètre name vaut null . |
RuntimePermission |
Une exception de ce type pourra être déclenchée si un SecurityManager vous restreint les accès aux variables d'environnement. |
L'exemple suivant cherche à afficher le répertoire d'accueil de l'utilisateur exécutant le programme. Deux techniques y sont comparées : l'utilisation des variables d'environnement et celle d'une propriété d'environnement. J'espère que la démonstration vous permettra de valider qu'il est préférable, tant que possible, de privilégier l'utilisation des propriétés d'environnement.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
package fr.koor.samples; public class Sample { public static void main( String [] args ) { // Récupération du répertoire d'accueil de l'utilisateur via les variables d'environnement String homeDirectory = null; String osName = System.getenv( "OS" ); if ( osName != null && osName.equals("Windows_NT") ) { homeDirectory = System.getenv( "HOMEDRIVE" ) + System.getenv( "HOMEPATH" ); } else { homeDirectory = System.getenv( "HOME" ); // Imposé par POSIX } System.out.println( "With getenv: " + homeDirectory ); // Récupération du répertoire d'accueil de l'utilisateur via une propriété d'environnement homeDirectory = System.getProperty("user.home"); System.out.println( "With getProperty: " + homeDirectory ); } } |
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :