IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

[Environnement][UNIX] Récupérer les variables environnement


Sujet :

Java

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 23
    Points : 20
    Points
    20
    Par défaut [Environnement][UNIX] Récupérer les variables environnement
    Bonjour,

    Je souhaite récupérer les variables déclarées par le biais d'un fichier .kshrc dans l'environnement.
    Par exemple:

    ces variables sont utilisées dans UNIX en les précédant d'un $
    ex: et on peut les récupérer en faisant un:
    par exemple.

    Je pensais les récupérer en faisant un System.getProperty("LOG");
    mais cela ne marche pas.

    Quelle est la méthode pour faire cela?
    On pourrait les passer en parametre du programme ou faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    runtime.exec("env | grep LOG")
    mais cela n'est pas très propre, je chercher quelque chose de plus clean.

    Merci à tous

  2. #2
    Gfx
    Gfx est déconnecté
    Expert éminent
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Points : 8 178
    Points
    8 178
    Par défaut
    System.getenv("LOG");

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    Exception in thread "main" java.lang.Error: getenv no longer supported, use properties and -D instead: LOG
    Donc non, cela ne fonctionne pas,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getProperty(String key)
    est la méthode qui a remplacé Other ideas?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 304
    Points : 348
    Points
    348
    Par défaut
    As-tu jetter un coup d'oeil à la FAQ?
    http://java.developpez.com/faq/java/..._environnement

  5. #5
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    getenv() fonctionne bien mais à partir de Java 5.0 (c'est une méthode déprécié qui a été réintroduite dans cette version).

    Sinon il faut utiliser System.Property() comme c'est indiqué dans la FAQ :
    Comment accéder aux valeurs des variables d'environnement ?

    a++

    [edit] grillé par Miss Gaelle

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    Lol, je l'ai testé y'a tout juste 20 minutes.

    Et la variable LOG ne se trouve pas dedans...
    Par contre, elle est dans la commande : d'UNIX

    En fait permet d'obtenir des renseignements sur les caractéristiques de l'environnement mais pas les variables d'environnement...

    EDIT->
    Si je comprends bien le post du dessus, je tombe pile au moment ou la version de java ne permet pas de récupérer proprement les variables d'environnement...
    ENDEDIT

  7. #7
    Membre averti
    Avatar de JHelp
    Inscrit en
    Octobre 2002
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 185
    Points : 444
    Points
    444
    Par défaut
    Bonjour,
    On peut récupérer la valeur de la variable d'environement, en tout cas la méthode que je te propose fonbctionne sous Linux et en laçant l'application via la console, une une ligne de commade dans un raccourcis. J'ai tester avec PATH :
    java -DPATH=$PATH test.Test
    Ce qui ce passe c'est que $PATH est interprété comme le contenu de PATH, et est copié en variable d'environement reconnu par Java. Dans le code j'ai mis juste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
          String path = System.getProperty("PATH");
          System.out.println("PATH = "+path);
    Quand on ne met pas -DPATH=$PATH on a :
    PATH = null
    et quand on le met on a bien le résultat attendu.
    Si quelqu'un peut tester si ça marche avec un .bat sous windaube ça serait bien.
    Voila
    JHelp

  8. #8
    Membre à l'essai
    Inscrit en
    Juillet 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    Pour ne pas être en reste, j'ai testé la manip sous windows.

    Ca marche nickel.

    Mais bon, je reste perplexe sur l'utilité de devoir redéfinir dans la commande de lancement du programme des variables d'environnement déjà définie...

    Du coup je vais garder le "passage par arguments+assignations à des variables statiques" moins lourd que la "redéfinition des variables d'environnement+ récupération des variables d'environnement".

    Merci à tous, et coup de chapeau à JHelp, le détenteur de la solution la plus "renard agile" (et pas lapin pour une fois)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 06/05/2010, 14h02
  2. Réponses: 4
    Dernier message: 29/12/2006, 17h03
  3. Réponses: 1
    Dernier message: 19/11/2006, 16h47
  4. [.NET]Modifier les variables d'environnement dans...
    Par GusS dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 09/02/2005, 16h25
  5. Réponses: 2
    Dernier message: 05/10/2004, 22h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo