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

Entrée/Sortie Java Discussion :

Exécution d'un .jar (linux) avec fichiers externes


Sujet :

Entrée/Sortie Java

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Exécution d'un .jar (linux) avec fichiers externes
    Bonjour,

    Je souhaite exécuter un .jar sous Linux. Je me place donc dans le répertoire où se situe le .jar et je lance avec succès cette commande:

    java -jar monprogramme.jar

    Je souhaiterais néanmoins pouvoir lancer mon programme en dehors du répertoire où il se situe. Je lance alors cette commande:

    java -jar /Documents/monDossier/monprogramme.jar

    Mon programme contient un logger, qui enregistre les logs dans un dossier externe, situe ici: /Documents/monDossier/logs

    Il y accède via le chemin relatif: /logs

    Or, lorsque je lance mon programme en dehors du répertoire dans lequel il se situe, celui-ci plante car il ne trouve pas le dossier de logs.

    J'en déduit que c'est un problème de chemins relatifs. En effet, quand je mets le chemin absolu dans mon programme, le problème disparaît.

    Je souhaiterais donc savoir comment il est possible d’exécuter mon programme sans modifier le chemin relatif, étant donné que celui-ci, contrairement au chemin absolu, sera toujours le même.

    Merci d'avance pour votre aide,

    Phil

  2. #2
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    bonjour,
    Citation Envoyé par feelhip7777 Voir le message
    Je souhaiterais donc savoir comment il est possible d’exécuter mon programme sans modifier le chemin relatif, étant donné que celui-ci, contrairement au chemin absolu, sera toujours le même.
    si tu veux garder un chemin relatif, alors il y a qu'un seul moyen le lancer dans son répertoire. Pour cela, fais un script shell de lancement et dans le script tu positionnes le répertoire et cela devrait suffire.

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Hello,

    En fait, je pense avoir trouve. J'ai créé un classe getPath afin d'obtenir la chemin absolu dans lequel s’exécute mon .jar. Puis, j'ajoute ce chemin en préfixe du chemin relatif de mon dossier externe.

    Phil

  4. #4
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    Citation Envoyé par feelhip7777 Voir le message
    En fait, je pense avoir trouve. J'ai créé un classe getPath afin d'obtenir la chemin absolu dans lequel s’exécute mon .jar. Puis, j'ajoute ce chemin en préfixe du chemin relatif de mon dossier externe.
    Normalement dans un programme certaines choses comme justement les répertoires de log, de configuration ou autre sont modifiable par l'utilisateur (habituellement grâce à un fichier .properties). Je trouve donc que c'est moyen de forcer le répertoire comme tu le fais, car si l'utilisateur souhaite mettre les logs dans un répertoire autre que celui du programme alors il ne pourra pas !

Discussions similaires

  1. Erreur avec fichiers externes
    Par Mainguy dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 09/07/2009, 22h23
  2. Runnable Jar: probleme avec fichier parametres
    Par Panneau dans le forum Général Java
    Réponses: 3
    Dernier message: 02/07/2009, 14h15
  3. Réponses: 3
    Dernier message: 23/12/2008, 12h24
  4. Image Map avec fichier externe
    Par anthropo dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 21/03/2008, 22h37
  5. [FLASH MX2004] *.swf avec fichiers externes
    Par TRiPoLYT dans le forum Flash
    Réponses: 18
    Dernier message: 27/04/2006, 16h59

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