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

Persistance des données Java Discussion :

Erreur NoClassDefFoundError Linux mais pas windows


Sujet :

Persistance des données Java

  1. #1
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Points : 730
    Points
    730
    Par défaut Erreur NoClassDefFoundError Linux mais pas windows
    Bonjour,

    J'ai un .jar que je lance sous windows sans problème et quand je le lance sous linux j'ai une exception NoClassDefFoundError... j'ai vérifié si j'avais pas de problèmes de majuscules minuscules, des problèmes de droits mais j'ai rien vu.
    Si quelqu'un à une piste?

    Merci

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Quelle est la classe qui n'est pas trouvée ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Points : 730
    Points
    730
    Par défaut
    héhé j'en ai oublié la moitié:

    J'ai un jar avec le manifest qui va bien et mon jaybird.jar dans un répertoire lib.

    Le même monProgramme.jar si je le lance sous windows il fonctionne parfaitement et sous linux ca me retourne cette erreur.

    Exception in thread "main" java.lang.NoClassDefFoundError: org.firebirdsql.jdbc.FBConnection
    at java.lang.Class.initializeClass(libgcj.so.81)
    at java.lang.Class.forName(libgcj.so.81)
    at java.lang.Class.forName(libgcj.so.81)
    at org.firebirdsql.gds.ClassFactory.get(ClassFactory.java:61)
    at org.firebirdsql.gds.impl.wire.WireGDSFactoryPlugin.getConnectionClass(WireGDSFactoryPlugin.java:29)
    at org.firebirdsql.gds.impl.GDSFactory.getConnectionClass(GDSFactory.java:334)
    at org.firebirdsql.jca.FBManagedConnectionFactory.newConnection(FBManagedConnectionFactory.java:826)
    at org.firebirdsql.jca.FBManagedConnection.getConnection(FBManagedConnection.java:482)
    at org.firebirdsql.jca.FBStandAloneConnectionManager.allocateConnection(FBStandAloneConnectionManager.java:73)
    at org.firebirdsql.jdbc.FBDataSource.getConnection(FBDataSource.java:119)
    at org.firebirdsql.jdbc.FBDriver.connect(FBDriver.java:131)
    at java.sql.DriverManager.getConnection(libgcj.so.81)
    at java.sql.DriverManager.getConnection(libgcj.so.81)
    at com.MaCompanie.core.Main.connecte(Main.java:352)
    at com.MaCompanie.core.Main.main(Main.java:61)
    Caused by: java.lang.ClassNotFoundException: java.sql.SQLClientInfoException not found in gnu.gcj.runtime.SystemClassLoader{GestionnaireLicence.jar], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
    at java.net.URLClassLoader.findClass(libgcj.so.81)
    at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.81)
    at java.lang.ClassLoader.loadClass(libgcj.so.81)
    at java.lang.ClassLoader.loadClass(libgcj.so.81)
    at java.lang.Class.forName(libgcj.so.81)
    at java.lang.Class.initializeClass(libgcj.so.81)
    ...14 more

    ----------------TESTS-------------

    Quand je fais le debug avec eclipse sous linux j'ai pas le problème. Ca doit venir d'un fichier de configuration particulier.

  4. #4
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    et les versions de la JVM entre windows et linux (en console, car Ecplise fonctionne bien) ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  5. #5
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Points : 730
    Points
    730
    Par défaut
    Citation Envoyé par dinobogan Voir le message
    et les versions de la JVM entre windows et linux (en console, car Ecplise fonctionne bien) ?
    C'est pas les mêmes linux 1.5 et windows 1.6 et sous linux avec eclipse j'ai foutu une 1.6

    Même si c'est une 1.5 ca devrait fonctionner.

  6. #6
    Membre averti Avatar de Vespasien
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 383
    Points : 434
    Points
    434
    Par défaut
    J'ai vu libgcj dans les erreurs. Linux utilise bien la JVM de Sun ou plutôt le java par défaut de la distribution qui est celui de gcc?

  7. #7
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Points : 730
    Points
    730
    Par défaut
    Citation Envoyé par Vespasien Voir le message
    J'ai vu libgcj dans les erreurs. Linux utilise bien la JVM de Sun ou plutôt le java par défaut de la distribution qui est celui de gcc?
    Et donc à cause de ca je ne peux pas charger ma lib??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    user@mamachine:~$java -version
    java version "1.5.0"
    gij (GNU libgcj) version 4.2.1 (Ubuntu 4.2.1-5ubuntu5)
     
    Copyright (C) 2007 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

  8. #8
    Membre averti Avatar de Vespasien
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 383
    Points : 434
    Points
    434
    Par défaut
    Je suppose que tu as installé une JVM de Sun.
    Dans /usr/bin ou /bin voir encore /usr/local/bin doit trainer un lien symbolique portant le doux nom de java. Détruit le. Modifie PATH afin que l'appel java aille bien sur /jdk-1.x/bin/java.

    Et donc à cause de ca je ne peux pas charger ma lib??
    Pas sûre! Mais si tu travailles dans le même contexte JVM sur les deux plates formes, çà va faire considérablement avancer le schmilblik.

  9. #9
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour,
    La GCJ est le mal preque rien ne fonctionne avec GCJ ...
    Non, sérieusement, essaies d'installer la JDK de sun ou encore IcedTea, et refais le test

  10. #10
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Points : 730
    Points
    730
    Par défaut
    J'ai modifier mon path viré le lien de java dans le bin et maintenant ca marche nickel.

    Merci!

    Pour info j'ai installé la dernière de chez sun.

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

Discussions similaires

  1. [LibreOffice][Tableur] Une macro qui fonctionne sous Linux mais pas sous windows
    Par ludox62 dans le forum OpenOffice & LibreOffice
    Réponses: 3
    Dernier message: 07/01/2014, 21h26
  2. JCheckbox icones persos - Bug sous linux mais pas sous Windows
    Par Hemophilius dans le forum AWT/Swing
    Réponses: 16
    Dernier message: 04/11/2011, 15h34
  3. Script qui marche sous Linux mais pas sous Windows et vice versa
    Par tu-phat dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 26/11/2009, 02h39
  4. Réponses: 5
    Dernier message: 13/04/2009, 23h12
  5. Réponses: 6
    Dernier message: 14/01/2008, 16h47

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