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

Eclipse Java Discussion :

[Eclipse + Jogl] Echec de chargement des librairies natives


Sujet :

Eclipse Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 82
    Points : 68
    Points
    68
    Par défaut [Eclipse + Jogl] Echec de chargement des librairies natives
    Bonjour à tous,

    Je poste dans ce forum car je suspecte que le problème soit lié à l'utilisation d'Eclipse, néanmoins je n'en suis pas sûr.

    Je travaille sous Eclipse et mon projet utilise Jogl. Conformément à ce que conseille le userguide.html livré avec jogl, j'ai tenté de ranger les .jar et les librairies dynamiques dans un répertoire séparé du jdk. J'ai correctement renseigné dans les "VM arguments" du dialogue "Run..." le java.library.path et le java.class.path. Et pourtant, au lancement de l'appli, j'ai droit à une UnsatisfiedLinkError qui se plaint de ne pas trouver les librairies natives de jogl (ça plante sur gluegen-rt parce que c'est la première qui se présente).

    Ensuite, j'ai créé un jar à partir de mon projet et j'ai exécuté ce jar depuis une ligne de commande en lui passant les mêmes options que celles de "VM arguments". Dans ce cas, l'appli se lance sans problème. C'est pourquoi je suspecte un problème spécifique à mon utilisation d'Eclipse.

    En vrac, voici les points que je peux affirmer après quelques jours d'investigations :
    - le problème concerne uniquement le chargement des librairies, les .jar de Jogl sont bien trouvés.
    - j'ai le même problème sous windows ou linux.
    - j'ai tenté un loadLibrary("gluegen-rt") à la première ligne du main() dans mon code et ça se passe bien. C'est si la JVM tente de la charger automatiquement à l'initialisation de la première classe de Jogl que ça ne marche pas.
    - j'ai vérifié à l'exécution que la property java.library.path était correcte, elle inclut bien le chemin vers les librairies de jogl.
    - je n'ai pas trouvé de trace d'un tel bug dans la base de bugs d'Eclipse.

    Au bout de beaucoup d'heures d'errance, je n'ai plus d'idées. J'en suis réduis à placer mes librairies dans l'arborescence du jre. Ce qui n'est pas fondamentalement un problème par contre j'ai peur que ce problème de chargement que je n'ai pas compris se manifeste sur des postes où mon appli sera déployées. Tant que le problème est limité au lancement de l'appli dans Eclipse, ça ne me gêne pas mais sans comprendre la raison du problème, je ne peux pas le jurer. Je vous remercie donc par avance de ne pas faire dévier le débat sur un troll du genre "pour ou contre le gros bazar dans jre/lib ?"

    Merci pour votre aide.

  2. #2
    Membre expérimenté
    Avatar de azerr
    Homme Profil pro
    Ingénieur Etude JEE/Eclipse RCP
    Inscrit en
    Avril 2006
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Etude JEE/Eclipse RCP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 942
    Points : 1 464
    Points
    1 464
    Par défaut
    Bonjour,

    Je vais peut etre dire des choses basiques. Mais as tu testé avec un projet Java Eclipse standard et configuré tes lib avec Eclipse (selection projet->menu contextuel (bouton froit)->Properties->Java Build Path->(Onglet Libraries)->Add Jars (tu peux creer un rep lib dans ton projet Eclipse et mettre tes jar).

    Une fois ceci effectue, tu lances ta classe Main "Run As ->Java Application".

    Une fosi que ca marche, tu peux aller voir les parametres a appele (java.library.path...) lorsque tu voudras appeler ta classe a l'aide d'un fichier .bat ou autre

    Angelo

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 82
    Points : 68
    Points
    68
    Par défaut
    Je n'ai peut-être pas été clair : l'erreur UnsatisfiedLinkError est levée lorsque je démarre mon appli depuis Eclipse et il n'y a aucun problème lorsque je la démarre depuis une ligne de commande.

    J'ai donc bien les jars de jogl dans le build path. D'ailleurs, les jars sont bien trouvés, ce sont les librairies natives qui ne le sont pas.

  4. #4
    Membre régulier

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 90
    Points : 114
    Points
    114
    Par défaut
    Salut,
    bon je sais pas si j'arrive trop tard ou pas. Je viens de me mettre à JOGL et j'ai eu le même problème. Pour résoudre le problème, j'ai ajouté à mon classpath via le menu properties du projet les deux jar suivants : jogl.jar et gluegen-rt.jar. Ensuite, si tu ouvre le menu sous ces jar (via la petite croix), tu peux regler le champ "Native Library". Pour le gluegen-rt.jar, j'ai mis le dossier où se trouve gluegen-rt.dll (avec jogl.dll aussi). Et puis ça marche.
    J'espère que ça résoudra ton problème ou alors que tu l'as déjà résolu.
    et merci de ne pas oublier le
    Please one little click on Nounou-land... Thanks !!

Discussions similaires

  1. Ordre de chargement des librairies
    Par Duc Lebowski dans le forum Weblogic
    Réponses: 1
    Dernier message: 15/01/2008, 16h31
  2. Réponses: 2
    Dernier message: 06/12/2007, 15h33
  3. Réponses: 1
    Dernier message: 28/05/2007, 00h22
  4. Réponses: 1
    Dernier message: 24/04/2007, 09h27
  5. chargement de librairies natives
    Par eclesia dans le forum NetBeans
    Réponses: 10
    Dernier message: 31/01/2007, 13h16

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