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 "NoClassDefFoundError" en ligne de commande


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Points : 13
    Points
    13
    Par défaut Erreur "NoClassDefFoundError" en ligne de commande
    Bonjour,

    Je débute avec Java et j'ai donc écrit les lignes suivantes :
    Nom : 130828015710494288.jpg
Affichages : 96
Taille : 121,8 Ko
    Pas de problème pour le fonctionnement avec Eclipse mais si j'essaie en ligne de commande, j'ai une erreur, bien qu'ayant tout mis dans le même répertoire, pour le cas où ça aurait été une histoire de localisation de fichier.
    Nom : 130828015801162434.jpg
Affichages : 131
Taille : 98,8 Ko
    Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?

    Merci d'avance pour votre aide.

  2. #2
    Membre actif Avatar de fastdeath124
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Août 2011
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur sécurité

    Informations forums :
    Inscription : Août 2011
    Messages : 117
    Points : 200
    Points
    200
    Par défaut
    Les noms des classes sont sensibles à la casse donc afficheInfoTest.java n'existe pas puisque le nom de ta classe est AfficheInfoTest.java

  3. #3
    Membre émérite
    Avatar de olivier.pitton
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2012
    Messages
    355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2012
    Messages : 355
    Points : 2 814
    Points
    2 814
    Par défaut
    En Java, le nom des classes et le nom des fichiers doit être absolument identique, casse inclus.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    oups !! j'avais pas pensé à ce truc là. Je pensais que ça se débrouillerait... je remets tout en minuscules ... on essaie ... MERCI, c'était juste ça en effet !

  5. #5
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Ta classe est dans quel package ? (on ne voit pas le haut du source de la classe)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par OButterlin Voir le message
    Ta classe est dans quel package ? (on ne voit pas le haut du source de la classe)
    Je ne sais pas encore ce que tu veux dire par "quel package". Comme j'ai recommencé en faisant un autre projet, je suppose que tu veux dire ça

    http://www.casimages.com/img.php?i=1...2538882414.jpg

    Mon problème c'est que je viens d'anciens langages. Il faut que je m'adapte

  7. #7
    Membre actif Avatar de fastdeath124
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Août 2011
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur sécurité

    Informations forums :
    Inscription : Août 2011
    Messages : 117
    Points : 200
    Points
    200
    Par défaut
    Citation Envoyé par orphee03 Voir le message
    je remets tout en minuscules
    Pour suivre convenablement les normes (Ce sont des conventions donc ton code peut être compilé et exécuté sans les respecter mais il faut le faire ):
    - Les noms des classes et des instances doivent être significatifs
    - Les noms des classes commencent toujours par une lettre en majuscule
    - Les noms des instances doivent toujours commencer par une lettre en minuscule
    - Si ma classe représente "les livres de Jean" je peux l'appeler par exemple : LesLivresDeJean (une lettre en majuscule au début de chaque mot).
    - Si j'instancie un objet de la classe LesLivresDeJean, je peux par exemple l'appeler lesLivresDeJean (une lettre en majuscule au début de chaque mot sauf le premier mot pour satisfaire la règle 3) ou encore lLesLivresDeJean, iLesLivresDeJean, myLesLivresDeJean ...

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Je parlais de la première ligne de ton source qui devrait ressembler à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    package test.fonction;
    
    public class Test
    {
        public static void main(String[] args)
        {
            System.out.println("OK");
        }
    }
    Quand tu appelles ta classe, il faut son nom qualifié "test.fonction.Test"
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par fastdeath124 Voir le message
    Pour suivre convenablement les normes (Ce sont des conventions donc ton code peut être compilé et exécuté sans les respecter mais il faut le faire ):
    - Les noms des classes et des instances doivent être significatifs
    - Les noms des classes commencent toujours par une lettre en majuscule
    - Les noms des instances doivent toujours commencer par une lettre en minuscule
    - Si ma classe représente "les livres de Jean" je peux l'appeler par exemple : LesLivresDeJean (une lettre en majuscule au début de chaque mot).
    - Si j'instancie un objet de la classe LesLivresDeJean, je peux par exemple l'appeler lesLivresDeJean (une lettre en majuscule au début de chaque mot sauf le premier mot pour satisfaire la règle 3) ou encore lLesLivresDeJean, iLesLivresDeJean, myLesLivresDeJean ...
    Très intéressant, merci. Je ne connais pas les normes . Moi j'ai toujours utilisé le principe NomProcedure ou NomObjet

    Ce qui veut dire que ce que je venais de taper


    public class AfficheTension {

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    byte Valeur8Bits=10; //notation hexa = 0xFF
    int Resultat=0;
    Resultat= Valeur8Bits / 2;
    System.out.print("ValeurEntiere=");
    System.out.println(Resultat);

    }

    }


    Aurait du, pour être syntaxiquement correct, s'écrire


    public class AfficheTension {

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    byte valeur8Bits=10; //notation hexa = 0xFF
    int resultat=0;
    resultat= valeur8Bits / 2;
    System.out.print("ValeurEntiere=");
    System.out.println(resultat);

    }

    }


    C'est bien ça ?

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

Discussions similaires

  1. REP-159(Erreur de syntaxe sur la ligne de commande)
    Par jeunot0108 dans le forum Reports
    Réponses: 8
    Dernier message: 26/02/2020, 14h08

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