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 pour trouver les librairies


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Erreur pour trouver les librairies
    Bonjour,

    Je développe en ce moment un petit programme en java composé d'une dizaine de classes pour l'instant et dont le main est contenu dans la classe "Combat.class".
    Ce programme marche très bien sur mon PC, je peux compiler et exécuter sans soucis.

    La où est mon problème c'est que j'ai envoyé ce programme à un ami et que ça ne marche pas chez lui.
    Voila comment on a procédé:
    Toutes les classes sont dans un dossier que j'ai compressé en rar.
    Je lui ais envoyé, il décompresse.
    Il va sous la console, rejoint le dossier contenant les classes et exécute le programme en tapant:
    java Combat

    Puis il reçoit le message d'erreur suivant:

    Exception in thread "main" java.lang.NoClassDefFoundError: combat
    Caused by: java.lang.ClassNotFoundException: combat
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppCla

    Donc si j'ai bien compris java ne trouve pas certaines classes.

    Enfin cet ami ne connait pas le java donc je suppose qu'il a installé le JRE.

    Voila si vous pouvez m'aider ce serait avec plaisir.

    Merci d'avance!

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Dis-lui qu'il faut vraiment mettre un C majuscule à Combat.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Je lui ais dit de mettre la majuscule mais il a toujours la même erreur. :S

  4. #4
    Membre averti
    Avatar de omar344
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2007
    Messages
    287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2007
    Messages : 287
    Points : 301
    Points
    301
    Par défaut
    demande lui s'il a bien configuré les variables d'environnement???

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Je pensais un peu à un truc dans ce genre aussi vu que mon code doit être bon puisqu'il marche chez moi.

    Mon problème c'est qu'il ne connait rien au java et j'irai même plus loin en disant que mon objectif est de pouvoir proposer mon mini programme à n'importe qui ayant installé java comme "le commun des mortels", c'est à dire à une personne qui n'a java que dans le but d'exécuter les applications java qu'il pourrait rencontrer sur internet.

    La question serait donc plutôt comment, dans mon code, pourrais-je faire en sorte qu'il le lise?

    Arrêtes moi si je dis une bêtise:
    Tu me parle de variables d'environnement, celles-ci ont pour but de trouver le chemin vers un exécutable ou ici des librairies. Ne serait-il pas possible d'indiquer ce chemin dans mon code pour que l'utilisateur n'ai pas à se soucier de ça?
    Biensur l'emplacement sur le PC peut changer mais dans 99% des cas la personne installe java sous program files comme c'est indiqué par défaut.

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    pour éviter ce genre d'emmerdes, package ton application dans un jar. Car tu n'est jamais certains qu'il est dans le bon répertoire, qu'il a bien décompilé, etc

    Au fait, ta classe Cobmat devrais être dans un package, java supporte de moins en moins les classes sans package

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par Milamber77 Voir le message
    Je lui ais dit de mettre la majuscule mais il a toujours la même erreur. :S
    Pour information, s'il a mis une majuscule à combat, alors il ne peut pas avoir l'erreur :

    Exception in thread "main" java.lang.NoClassDefFoundError: combat
    Caused by: java.lang.ClassNotFoundException: combat

    C'est l'un ou l'autre. C'est pour ça que je dis qu'il faut vraiment une majuscule.

    Mais je suis d'accord avec tchize_, il vaut mieux faire un jar.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Pour information, s'il a mis une majuscule à combat, alors il ne peut pas avoir l'erreur :

    Exception in thread "main" java.lang.NoClassDefFoundError: combat
    Caused by: java.lang.ClassNotFoundException: combat

    C'est l'un ou l'autre. C'est pour ça que je dis qu'il faut vraiment une majuscule.

    Mais je suis d'accord avec tchize_, il vaut mieux faire un jar.
    Salut,

    Je suis peut-être à côté de la plaque, mais ceci ne serait pas possible sur une partition en fat32 ? Parce que fat32 ignore les majuscules/minuscules et j'ai déjà eu des problèmes de ce genre avec java et fat32

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    fat32 fais bien la disctinction majuscules / minuscules en ce sens que si tu crée un fichier Combat.class, il ne deviens pas subitement combat.class. Ce qui n'est pas possible en fat32, c'est de changer la casse d'un fichier existant (il faut d'abord le renomer en autre chose), car, quand on cherche un fichier, fat32 ignore les majuscules, mais java fait bien la vérification (le nom de la classe est aussi stocké dans le .class!). Bref fat32 stocke bien les majuscule, mais si il fait des comparaisons sans casse.

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Comme dit plus haut, il ne doit pas être dans le bon répertoire. Et de même faire un jar exécutable voir un exe

  11. #11
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Ok merci à vous tous pour vos réponse.
    En effet je pense qu'il avait fait une erreur car j'ai cdemandé à 2 autres amis d'essayer et ça a marché avec eux.

    Je vais me renseigner sur ce que sont les jar et quelle est leur utilité. Si vous avez des liens de qualité à ce niveau je prends sinon pas de problème je vais chercher.

    Merci encore à vous tous pour vos réponses.

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    regarde les tutos et les FAQs de dvp. Les jar sont simplement un moyen d'empaqueter classes et ressources dans une seule archive.

Discussions similaires

  1. Gestion des erreurs : ou trouver les erreurs possibles pour une opération
    Par Godzestla dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 27/10/2008, 14h33
  2. [IVR]Ou trouver les librairies pour Linux ?
    Par muad'dib dans le forum C
    Réponses: 1
    Dernier message: 10/01/2008, 15h11
  3. [SAX] Erreur pour trouver la DTD d'un fichier XML parsé!
    Par gdawirs dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 14/01/2006, 15h28
  4. Réponses: 3
    Dernier message: 24/11/2005, 09h44
  5. [Ada 95] où trouver les librairies ??
    Par kindool dans le forum Ada
    Réponses: 1
    Dernier message: 23/05/2005, 17h59

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