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

3D Java Discussion :

Probléme application jarée et jogl.


Sujet :

3D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 8
    Par défaut Probléme application jarée et jogl.
    Tout d'abord bonjour a vous tous, et en esperant que ce post pourra aider d'autres que moi par la suite.

    Voila mon problème :

    J'ai developpé une application necessitant Jogl assez grosse et je l'ai exportée en .jar dans le but de pouvoir la lancer en tapant une commande du type "java -jar monappli.jar". Hors bien evidemment, je dois specifier le jar jogl pour que cette dernière fonctionne. J'essaye hasardeusement la commande suivante : java -classpath /../Prog/lib/jogl.jar -jar monappli.jar. Le programme se lance ... jusqu au moment ou je fais appel a un GLEventListener voila l'erreur affichée sur la console :

    Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: javax/media/opengl/GLEventListener
    at gui.GeneralMenu.actionPerformed(GeneralMenu.java:518)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1000)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1041)
    at java.awt.Component.processMouseEvent(Component.java:5488)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
    at java.awt.Component.processEvent(Component.java:5253)
    at java.awt.Container.processEvent(Container.java:1966)
    at java.awt.Component.dispatchEventImpl(Component.java:3955)
    at java.awt.Container.dispatchEventImpl(Container.java:2024)
    at java.awt.Component.dispatchEvent(Component.java:3803)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
    at java.awt.Container.dispatchEventImpl(Container.java:2010)
    at java.awt.Window.dispatchEventImpl(Window.java:1778)
    at java.awt.Component.dispatchEvent(Component.java:3803)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)


    D'après ce que j'ai pu lire sur moults forums ... l'erreur sera du au fait que jogl.jar n'est pas trouvé. Precisions : j'ai exporté mon application en jar par l'intermédiaire d'eclipse avec les paramètres suivant .. jogl.jar ajouté en jar externe (emplacement de jogl : /../Prog/lib/, emplacement des *.so : /.../Prog/lib/).

    J'utilise la jsr231-1.0

    Est ce que je fais une erreur lors du lancement de mon jar ? si oui laquelle et comment y remedier ? si non est ce tout simplement possible de lancer une appplication jarée usitant Jogl ?

    En esperant d'avoir été aussi précis que possible. Merci pour toutes vos réponses futures.

  2. #2
    Membre éprouvé Avatar de BainE
    Inscrit en
    Mai 2004
    Messages
    1 327
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 1 327
    Par défaut
    si c'est un probleme du jar importé, tu peux jeté un coup d'oeil dans le manifest créé par eclipse, pour voir s'il l'a bien pris en compte, et s'il n'y a pas un probleme de path

  3. #3
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 8
    Par défaut
    Je vais peut être abusé mais un problème de PATH se traduirais comment ?

    je peut fournir ici une capture du Manifest.


    Merci pour cette prompte réponse.

  4. #4
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 817
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 817
    Par défaut
    Salut,

    Citation Envoyé par Asaturne
    J'essaye hasardeusement la commande suivante : java -classpath /../Prog/lib/jogl.jar -jar monappli.jar. Le programme se lance ... jusqu au moment ou je fais appel a un GLEventListener
    La ligne que tu passes avec le flag -classpath... qui, d'ailleurs, est très bizarre... y'a un espace entre / et ../Prog/lib/jogl.jar? Tu es sous linux? Utilise ":" alors pour le séparateur... et pas un espace... donc, je disais, le flag -classpath n'est pas pris en compte (si je ne m'abuse) lorsque tu lances un fichier jar. Java ne considère alors que la ligne "Class-Path" du fichier Manifest. Est-ce que tu as vérifié qu'il y avait bien ce qu'il fallait à cet endroit?

    Citation Envoyé par Asaturne
    jogl.jar ajouté en jar externe (emplacement de jogl : /../Prog/lib/, emplacement des *.so : /.../Prog/lib/).
    C'est quoi ces chemins??? Y'a toujours des espaces? Et c'est quoi ces trois points?

    Est-ce que tu pourrais nous fournir l'arborescence de ton... installation, stp? Qu'on y voit plus clair...
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  5. #5
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 8
    Par défaut
    les ... ne signifient en fait qu'il y a une certaine arborescence avant d'atteindre les repertoires et fichiers (dsl pour l'incompréhenssion). Je vais essayer de regarder cette histoire de class-path a l'intérieur du manifest.

    voila mon manifest :

    Manifest-Version: 1.0

    Class-Path: /home0/leiris0/Prog/lib/jogl.jar

    Main-Class: gui.Main



    Mais toujours la même erreur : l appli se lance correctement jusqu a l'utilisation du GLEventListener

  6. #6
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Je confirme les infos de plegat : Java ignore -classpath quand -jar est utilisé.

    Simplifie-toi la vie et pose JOGL dans le dossier ext/ de ton JDK/JRE

  7. #7
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 8
    Par défaut
    En effet cela marche beaucoup mieux avec jogl dans ext et j'etais complétement idiot de ne pas le faire. En fait je pensais qu en agissant ainsi, mon appli ne pourrait pas tourner sur toutes les machines (car c'est son but en fait).Mais j'avais mal reflechis et cela fonctionnera bien evidement sur plusieurs machines sans problèmes. Merci pour vos conseils et votre aide.

  8. #8
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 817
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 817
    Par défaut
    Citation Envoyé par Asaturne
    cela fonctionnera bien evidement sur plusieurs machines sans problèmes.
    A ceci près qu'il faudra que les machines sur lesquelles tu déploies ton programme aient également Jogl dans leur classpath...

    D'un autre côté, ça évite de distribuer Jogl avec ton prog.
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

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

Discussions similaires

  1. Problème application d'un skin à un TextBox
    Par Filippo dans le forum ASP.NET
    Réponses: 1
    Dernier message: 09/02/2007, 11h06
  2. Problème Application MDI
    Par draiah dans le forum Delphi
    Réponses: 4
    Dernier message: 20/11/2006, 13h06
  3. Réponses: 6
    Dernier message: 10/07/2006, 14h46
  4. Problème application multi-tier et Oracle ?
    Par bds2006 dans le forum Bases de données
    Réponses: 1
    Dernier message: 29/06/2006, 11h58
  5. problème application avec 2 BD
    Par PAYASS59 dans le forum Requêtes
    Réponses: 2
    Dernier message: 16/01/2006, 15h13

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