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

Langage Java Discussion :

java en ligne de commande et chemin absolu


Sujet :

Langage Java

  1. #1
    mon_nom_est_personne
    Invité(e)
    Par défaut java en ligne de commande et chemin absolu
    Bonjour a tous,
    Je vous explique brievement mon probleme :

    je suis sous linux (jusque la pas de souci), et je desire lancer une class depuis le shell (toujours pas de souci) je fait donc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #java maClass arg1 arg2 ....
    Ca se passe comme sur des roullettes.

    Mais pour mon projet j'ai besoin d'appelle cette commande depuis un script dans un autre repertoire: je me dis alors: "pas de souci il me suffit de faire" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #java /chemin/absolu/de/ma/class/maClass arg1 arg2 ....
    et la j'ai cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Exception in thread "main" java.lang.NoClassDefFoundError: /chemin/absolu/de/ma/class/maClass
    Caused by: java.lang.ClassNotFoundException: .chemin.absolu.de.ma.class.maClass
    je me dit alors p-e un souci avec cette histoire de classpath, je met donc -classpath mais la c'est sur mes arguments qu'il trouve le probleme de java.lang.NoClassDefFoundError.

    si quelqu'un a une idee de comment faire hormis de copie ma classe dans le emme repertoire que mon script, je suis prenneur

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 268
    Points : 199
    Points
    199
    Par défaut
    La première chose qui me vient à l'esprit, ce serait un problème de caractère dans le chemin.

    Sinon, je connais très peu linux, mais peut être que faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #cd /chemin/absolu/de/ma/class/
    #java maClass arg1 arg2 ....
    Ca peut marcher ? J'ai jamais essayé pour lancer un programme java
    Pensez au tag quand votre problème est réglé !

  3. #3
    Invité
    Invité(e)
    Par défaut
    Salut

    Quand tu lances tomn programmes en ligne de commande il faut que tu sois à la base de là où commencent tes packages.
    Si tu as un package ainsi : mon.paquet avec ta classe Classe dans ce package, tu dois avoir cette arborescene:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /un/certain/chemin/mon/paquet/Classe.class
    Tu dois ensuite faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    # cd /un/certain/chemin/
    # java mon.paquet.Classe arg1 arg2 ...
    L'aroborescence des répertoires et les packages sont très liés en java...
    Tschau

  4. #4
    mon_nom_est_personne
    Invité(e)
    Par défaut
    merci a tous pour cette reponse qui m'a aider enormement.
    J'ai donc opter pour resoudre ce probleme de creer un jar de mon projet, donc plus de souci de chemin du package

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

Discussions similaires

  1. Executer un programme java en ligne de commande
    Par kawther dans le forum Débuter avec Java
    Réponses: 6
    Dernier message: 18/02/2015, 19h49
  2. Réponses: 16
    Dernier message: 10/03/2011, 14h19
  3. Exécution d'un programme Java en ligne de commande
    Par Emmi_87 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 20/05/2010, 21h22
  4. Réponses: 4
    Dernier message: 21/10/2009, 16h27
  5. Indentation fichier java en ligne de commande
    Par kinder29 dans le forum Général Java
    Réponses: 7
    Dernier message: 29/04/2008, 17h09

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