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

avec Java Discussion :

erreur lors du lancement de mes .class


Sujet :

avec Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut erreur lors du lancement de mes .class
    bonjour,

    Je cree un simple programme qui affiche " hello world". Il se compile impec avec eclipse aini que en ligne de commande.

    Quand je lance le resultat essai.class j' ai le message d'erreur suivant:

    Exeption in thread "main" java.Lang.NoClassDefFoundError : c:\essai/class


    Pouvez vous me dire ce qui se passe et comment y remedier?

    Merci
    Patrick

  2. #2
    Membre expérimenté Avatar de Tux++
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    281
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 281
    Par défaut
    Bonsoir,

    comme l'exception le mentionne bien, une classe n'est pas trouvée maintenant sans code on ne peut pas te dire grand chose

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut voici le code
    public class essai {

    public static void main(String[] args) {

    System.out.println("Hello World");

    }

    }

  4. #4
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Il ne faut pas mettre l'extension .class quand tu exécute ton programme et il faut mieux se placer dans le répertoire où se trouve ton programme.

    Au passage, par convention, le nom des classes devrait commencer par une majuscule.

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    pour rappel, soit la classe Truc située dans le package bidule.machin


    pour compiler c'est javac bidule/machin/Truc.java
    pour exécuter c'est java bidule.machin.Truc

    et au niveau code c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    package bidule.machin;
    public class Truc {
      public static void main (String argv[]){
        // ......

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut reponse
    bonjour,

    java essai ne marche pas mieux et provoque 12 messages d erreur de type:

    at java.lang..........(unknow source)

    ou se trouvent les classes dans java(dans quel repertoire) et pourquoi ce programme ne les atteinds pas?

    quand je compile depuis eclipse, la console affiche bien "hello world".....
    c est à n'y rien comprendre.....

  7. #7
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    les classes se trouvent dans le classpath, qui est, si t'as rien chipoté, formé des jars de la jvm plus le répertoir courant. Pour ton stacktrace, si tu l'affiche pas, on peut pas t'aider. On a expliqué comment compiler et exécuter avec lien et tout Si t'as toujours des problème après avoir lu tout çà, file nous le stacktrace.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut reponse
    bonjour,

    j' ai restauré mon ordi à une date anterieure et reinstalé java.
    Toujours le meme problème

    que ce que le stacktrace et ou le trouver?

  9. #9
    Membre expérimenté Avatar de Tux++
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    281
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 281
    Par défaut
    bonjour,

    le problème ne vient pas de l'ordi...

    Imagine tu as un dossier Tests/ et dedans tu as ton fichier essai.class,

    tu te places dans ce dossier test et tu compiles ton fichier essai.

    Le Stacktrace permets d'inspecter la JVM et les "frames" lancées paer ton programme, il s'agit de la pile de la jvm

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut reponse
    je ne comprends pas......la compilation se fait sans problème

  11. #11
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Colle-nous le message d'erreur que tu obtiens...

    En entier.

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut
    programme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    package pack;
    public class Bjr {
    		public static void main(String[] args) {
    		System.out.println("Hello World");
    }
    }
    la compilation se passe bien
    -----------------------------------------------------------------------
    au lancement par java Bjr.class : messages d'erreur :

    Exception in thread "main" java.lang.NoNlassDefFoundError: Bjr/class
    Caused by: java.lang.ClassNotFoundException : Bjr/class
    at: java.net.URLClassLoader$1.run<Unknow Source>
    at: java.secutity.AccessController.doPrivileged<Native Method>
    at: java.net.URLClassLoader.findClass<Unknow Source>
    at: java.lang.ClassLoader.loadClass<Unknow Source>
    at: sun.misc.Lauchner$AppClassLoader.loadClass<Unknow Source>
    at: java.lang.ClassLoader.loadClass<Unknow Source>
    at: java.lang.ClassLoader.loadClassInternal<Unknow Source>

    .....voila

  13. #13
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Citation Envoyé par pbauquel Voir le message
    au lancement par java Bjr.class : messages d'erreur :
    Déjà je te l'ai dit, il ne faut pas mettre l'extension .class quand tu exécute un programme Java.

    Ensuite tu utilises un package donc il faut que ta classe soit placée dans un répertoire ayant le même nom que ton package (ici le répertoire doit s'appeler pack).

    Enfin, pour l'exécution, tu te places au niveau au dessus de ton répertoire pack (donc dans le répertoire qui contient le répertoire pack, tu me suis?) et tu tapes la commande suivante :


  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut ouf!
    ça y est ça marche

    merci...merci beaucoup

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

Discussions similaires

  1. erreur lors du lancement d'Eclipse
    Par windu.2b dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 10/07/2006, 18h27
  2. Erreur lors de lancement de Delphi 7!
    Par pointer dans le forum Delphi
    Réponses: 4
    Dernier message: 06/07/2006, 11h54
  3. Erreur lors du lancement de SQLLOADER
    Par judefei dans le forum SQL*Loader
    Réponses: 5
    Dernier message: 21/06/2006, 17h55
  4. SQLLOADER erreur lors du lancement
    Par judefei dans le forum SQL*Loader
    Réponses: 1
    Dernier message: 20/06/2006, 10h42
  5. [JFileChooser] erreur lors du lancement ....
    Par Junecisco dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 29/03/2006, 11h09

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