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

Java Discussion :

Exception in thread "main" java.lang.NoClassDefFoundError


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut Exception in thread "main" java.lang.NoClassDefFoundError
    bonjour a tous,

    je vous explique je suis sous Unix et je veux compiler un projet java ainsi que l exécuter ....
    donc j ai le fichier Manifest.mf suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Manifest-Version: 1.0
    Created-By: 1.6.0_07 (Sun Microsystems Inc.)
    Main-Class: Test
    je creer mon jar en appelant le fichier sh suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #!/bin/bash
    # Fichier SaphirLauncher
    /users1/systeme/jdk1.6.0_07/bin/jar cvmf ./META-INF/Manifest.mf saphir.jar ./bin/*.class ./lib/*.jar
    donc lorsque je lance ce fichier tout a l air de bien marcher :
    added manifest
    adding: bin/ConnectionElec.class(in = 1595) (out= 833)(deflated 47%)
    adding: bin/Copy.class(in = 2506) (out= 1405)(deflated 43%)
    adding: bin/CreationHTML.class(in = 2576) (out= 1147)(deflated 55%)
    adding: bin/DelRep.class(in = 1128) (out= 693)(deflated 38%)
    adding: bin/Descripteur.class(in = 2258) (out= 1257)(deflated 44%)
    adding: bin/DescripteurEquipement.class(in = 1615) (out= 838)(deflated 48%)
    adding: bin/Enumeres.class(in = 6930) (out= 3594)(deflated 48%)
    adding: bin/Evenements.class(in = 9476) (out= 4900)(deflated 48%)
    adding: bin/EvenementsCdt.class(in = 7525) (out= 3950)(deflated 47%)
    adding: bin/MenuSousEnsembles.class(in = 5787) (out= 3074)(deflated 46%)
    adding: bin/PCCT.class(in = 1450) (out= 776)(deflated 46%)
    adding: bin/Param.class(in = 11223) (out= 5821)(deflated 48%)
    adding: bin/Recherche.class(in = 5718) (out= 3160)(deflated 44%)
    adding: bin/SortiesCDT.class(in = 8984) (out= 4570)(deflated 49%)
    adding: bin/SurveillanceDefaut.class(in = 1587) (out= 807)(deflated 49%)
    adding: bin/SurveillancePlugins.class(in = 5793) (out= 2971)(deflated 48%)
    adding: bin/Test.class(in = 7927) (out= 3502)(deflated 55%)
    adding: bin/Var.class(in = 2881) (out= 1624)(deflated 43%)
    adding: lib/jaxen-core.jar(in = 160967) (out= 139613)(deflated 13%)
    adding: lib/jaxen-jdom.jar(in = 5881) (out= 5143)(deflated 12%)
    adding: lib/jdom.jar(in = 153115) (out= 144462)(deflated 5%)
    adding: lib/saxpath.jar(in = 23563) (out= 21043)(deflated 10%)
    sauf que lorsque je veux exécuter mon fichier jar :
    avec la commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    jdk1.6.0_07/bin/java -jar saphir.jar
    j ai droit a l errreur :
    Exception in thread "main" java.lang.NoClassDefFoundError: Test

    j ai tester pas mal de config pour le fichier manifest dans le chemin de la classe Test : Test , bin/Test ....
    j'ai aussi bien sauter une ligne a la fin ....
    mais toujours la même erreur

    merci pour votre aide ++

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut
    Le problème vient du chemin d'accès que tu spécifies lors de la création du jar. Si tu regarde le contenu de ton archive, tu vas retrouver les répertoires lib et bin, ce qui n'est pas correct car ce ne sont pas des packages.

    Il faut que tu regroupes tous tes fichiers dans le même répertoire :
    mkdir tmp
    mv bin/* lib/* tmp

    cd tmp

    jar cvmf ./META-INF/Manifest.mf saphir.jar *.class *.jar

  3. #3
    Membre émérite Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    mreci verbose

    ca "fonctionne" maintenant mais au lancement du jar j ai l exception :
    Exception in thread "main" java.lang.NoClassDefFoundError: org/jdom/Content
    poutant j ai bien integrer Jdom.jar .... ??? avez vous une idée ???

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut
    Je n'ai pas tilté au premier abord, mais maintenant que tu me parles de l'erreur, je ne crois pas que tu puisse incorporer un jar dans un autre jar.

    Il faut que tu spécifie le chemin vers tes jars avec le paramètre Class-Path.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Manifest-Version: 1.0
    Main-Class: Test
    Class-Path: jaxen-core.jar jaxen-jdom.jar jdom.jar saxpath.ja

  5. #5
    Membre émérite Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    verbose t assure

    bon j ai eu droit a 2-3 ptites exception encore ... mais corrigé, maintenant tout se lance mais j ai une nouvelle exeception au bout de 20 sec :

    Exception in thread "main" java.lang.UnsatisfiedLinkError: /users1/systeme/jdk1.6.0_07/jre/lib/sparc/libnio.so: ld.so.1: /users1/systeme/jdk1.6.0_07/bin/java: fatal: librt.so.1: version `SUNW_1.2' not found (required by file /users1/systeme/jdk1.6.0_07/jre/lib/sparc/libnio.so)
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1668)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1030)
    at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.nio.ch.Util.load(Util.java:342)
    at sun.nio.ch.FileChannelImpl.<clinit>(FileChannelImpl.java:1231)
    at java.io.FileInputStream.getChannel(FileInputStream.java:296)
    at Evenements.copyFile(Evenements.java:207)
    at Evenements.createXmlTemp(Evenements.java:173)
    at Evenements.makeAll(Evenements.java:477)
    at Test.main(Test.java:41)

    pas mal celle la non ?

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut
    Wé là c'est chaud, on dirait que ton JRE est corrompu. Il manque une librairie, apparemment librt.so.1.

    Est-ce que tu pourrais lancer une recherche dans JAVA_HOME sur librt.so.1 et libnio.so pour voir ce que ça donne.

    Si tu es sous linux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    find $JAVA_HOME -name *librt.so.1
    find $JAVA_HOME -name *libnio.so

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

Discussions similaires

  1. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException ?
    Par freezerhm dans le forum Concurrence et multi-thread
    Réponses: 5
    Dernier message: 04/12/2007, 09h26
  2. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    Par Trint dans le forum Interfaces Graphiques en Java
    Réponses: 6
    Dernier message: 27/02/2007, 11h28
  3. Réponses: 8
    Dernier message: 11/05/2006, 19h32
  4. [JDIC]Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    Par kedare dans le forum Concurrence et multi-thread
    Réponses: 4
    Dernier message: 06/05/2006, 22h45

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