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 :

Projet Exporté en JAR ne veut pas s'exécuter


Sujet :

Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut Projet Exporté en JAR ne veut pas s'exécuter
    Bonjour,

    j'ai terminé une petite application utilisant des règles métiers (avec Drools)
    lorsque j'exécute mon projet via Eclipse, tout fonctionne, mes fichiers sont créés
    Mais lorsque j'exécute le fichier JAR, il n'y a qu'un seul fichier de créé, celui qui doit etre créé via les rules ne se crée pas


    d'où vient le problème?

  2. #2
    Membre actif Avatar de hydraland
    Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Points : 239
    Points
    239
    Par défaut
    Salut,

    Est ce que les jar de Drools sont dans le class-path de ton jar?

    A+
    Hydraland

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    apparemment oui

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?xml version="1.0" encoding="UTF-8"?>
    <classpath>
    	<classpathentry kind="src" path="src/main/java"/>
    	<classpathentry kind="src" path="src/main/rules"/>
    	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    	<classpathentry kind="con" path="DROOLS/Drools"/>
    	<classpathentry kind="output" path="bin"/>
    </classpath>

  4. #4
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Salut,

    Par hasard, tu viendrais pas de nous donner le .classpath d'Eclipse là??
    C'est pas le classpath de ton JAR ^^
    Ce qu'hydraland te demandait, c'est le Classpath de ton JAR, celui qui se trouve dans ton MANIFEST.MF ^^
    Tu dois avoir quelque chose dans ce goût là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Manifest-Version: 1.0
    Main-Class: MaClasseMain
    Classpath: le/chemin/vers/le/jar/drools.jar
    Voilà, ++
    Gueritarish
    Pas de questions technique par MP, les forums sont là pour ça.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    je viens de créer le fichier manifest avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Manifest-Version: 1.0
    Main-Class: Lancement
    Classpath: C:\Documents and Settings\jcqbnt\My Documents\eclipse\plugins\org.drools.eclipse_4.0.4.jar
    et cela ne fonctionne toujours pas

  6. #6
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Alors, ce que je te conseille de faire, au lieu de mettre un chemin absolu, c'est d'écrire dans ton jar :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Manifest-Version: 1.0
    Main-Class: Lancement
    Classpath: org.drools.eclipse_4.0.4.jar
    Et de mettre le JAR de ton application dans le même dossier que le JAR de Drools.

    Et si ça marche toujours pas, on trouvera autre chose

    Voilà, ++
    Gueritarish
    Pas de questions technique par MP, les forums sont là pour ça.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    ca ne marche toujours pas

  8. #8
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Alors essaye de mettre un "." dans le Classpath pour ajouter le répertoire courant...
    Sinon, c'est que le problème ne se situe pas au niveau du JAR de Drools...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Manifest-Version: 1.0
    Main-Class: Lancement
    Classpath: . org.drools.eclipse_4.0.4.jar
    Pas de questions technique par MP, les forums sont là pour ça.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    cela ne doit pas être à ce niveau là alors

    j'ai fait ce que tu m'as dit et j'ai un message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    JAR creation failed. See details for additional information.
      Resource is out of sync with the file system: '/Stage-Rules/manifest.mf'.

  10. #10
    Membre actif Avatar de hydraland
    Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Points : 239
    Points
    239
    Par défaut
    Lance ton jar dans une fenêtre de commande en faisant java -jar <ton jar> et dit nous l'exception qui est renvoyée.

    A+
    Hydraland

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/drool
    s/WorkingMemory
            at traitements.LectureFichiers.afficherContenu(LectureFichiers.java:59)
            at Lancement.go(Lancement.java:51)
            at Lancement$1.actionPerformed(Lancement.java:39)
            at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
            at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
            at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
            at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
            at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour
    ce)
            at java.awt.Component.processMouseEvent(Unknown Source)
            at javax.swing.JComponent.processMouseEvent(Unknown Source)
            at java.awt.Component.processEvent(Unknown Source)
            at java.awt.Container.processEvent(Unknown Source)
            at java.awt.Component.dispatchEventImpl(Unknown Source)
            at java.awt.Container.dispatchEventImpl(Unknown Source)
            at java.awt.Component.dispatchEvent(Unknown Source)
            at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
            at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
            at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
            at java.awt.Container.dispatchEventImpl(Unknown Source)
            at java.awt.Window.dispatchEventImpl(Unknown Source)
            at java.awt.Component.dispatchEvent(Unknown Source)
            at java.awt.EventQueue.dispatchEvent(Unknown Source)
            at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
     
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.run(Unknown Source)

  12. #12
    Membre actif Avatar de hydraland
    Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Points : 239
    Points
    239
    Par défaut
    Salut,
    Cela confirme bien qu'il te manque les librairies de Drools. Fait la manip que t'as proposé Gueritarish et relance la commande que je t'ai donné. Si ça ne marche pas donne nous le manifest qui se trouve dans le jar de ton application.

    A+
    Hydraland

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    Quand je suis la méthode de Gueritarish
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    JAR creation failed. See details for additional information.
      Resource is out of sync with the file system: '/Stage-Rules/manifest.mf'.
    Quand mon JAR est créé, j'ai ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    JAR export finished with warnings. See details for additional information.
      Problem writing /Stage-Rules/src/main/rules/CategoriesSuggerees.drl to JAR: duplicate entry: CategoriesSuggerees.drl
      duplicate entry: CategoriesSuggerees.drl
      Problem writing /Stage-Rules/src/main/rules/Dinasti.drl to JAR: duplicate entry: Dinasti.drl
      duplicate entry: Dinasti.drl
      Problem writing /Stage-Rules/src/main/rules/Niss.drl to JAR: duplicate entry: Niss.drl
      duplicate entry: Niss.drl

    la commande java -jar
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    C:\Documents and Settings\jcqbnt\My Documents>java -jar "Créer fichier d'erreurs.jar"
    Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/drool
    s/WorkingMemory
            at Lancement.go(Lancement.java:53)
            at Lancement$1.actionPerformed(Lancement.java:42)
            at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
            at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
            at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
            at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
            at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour
    ce)
            at java.awt.Component.processMouseEvent(Unknown Source)
            at javax.swing.JComponent.processMouseEvent(Unknown Source)
            at java.awt.Component.processEvent(Unknown Source)
            at java.awt.Container.processEvent(Unknown Source)
            at java.awt.Component.dispatchEventImpl(Unknown Source)
            at java.awt.Container.dispatchEventImpl(Unknown Source)
            at java.awt.Component.dispatchEvent(Unknown Source)
            at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
            at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
            at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
            at java.awt.Container.dispatchEventImpl(Unknown Source)
            at java.awt.Window.dispatchEventImpl(Unknown Source)
            at java.awt.Component.dispatchEvent(Unknown Source)
            at java.awt.EventQueue.dispatchEvent(Unknown Source)
            at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
     
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.run(Unknown Source)



    le manifest de mon application
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Manifest-Version: 1.0
    Classpath: org.drools.eclipse_4.0.4.jar
    Main-Class: Lancement
    le classpath qui est dans le jar de l'application
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?xml version="1.0" encoding="UTF-8"?>
    <classpath>
    	<classpathentry kind="src" path="src/main/java"/>
    	<classpathentry kind="src" path="src/main/rules"/>
    	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    	<classpathentry kind="con" path="DROOLS/Drools"/>
    	<classpathentry kind="output" path="bin"/>
    </classpath>
    ce ne serait pas cette ligne là qui fait tout planter?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <classpathentry kind="con" path="DROOLS/Drools"/>
    sinon, j'ai bien les librairies de Drools, je les vois dans mon projet

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Points : 18
    Points
    18
    Par défaut
    Je pense qu'il doit être possible d'ajouter un paramètre classpath au lancement du JAR. style java -D:monclasspath. Tu devrais essayer en mettant le chemin de DRools
    Mais je ne suis pas sûr.

    Java et les classpath c'est la m...

    Autre point es-tu sûr que DRools est dans ton JAR ou accessible ?

  15. #15
    Membre expérimenté
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 011
    Points : 1 375
    Points
    1 375
    Par défaut
    A ta place j'installerais FatJar. Ca va te simplifier la vie, quelque chose de violent.

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    Citation Envoyé par muad'dib Voir le message
    A ta place j'installerais FatJar. Ca va te simplifier la vie, quelque chose de violent.
    j'ai essayé les instructions qu'ils disent mais je ne comprends rien :p

    pourrais-tu m'aider si tu l'as installé aussi?
    merci d'avane

  17. #17
    Membre expérimenté
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 011
    Points : 1 375
    Points
    1 375
    Par défaut
    C'est un plugin d'eclipse. Désolé je ne suis pas sur que tu l'utilises.

Discussions similaires

  1. [DBMS_SCHEDULER] Job qui ne veut pas s'exécuter.
    Par hellmaster78 dans le forum PL/SQL
    Réponses: 3
    Dernier message: 01/08/2011, 16h59
  2. RemindTask ne veut pas s'exécuter
    Par Palsajicoco dans le forum Langage
    Réponses: 5
    Dernier message: 26/05/2011, 18h26
  3. Réponses: 2
    Dernier message: 25/08/2010, 17h50
  4. Serveur DNS ne veut pas s'exécuter
    Par webrider dans le forum Réseau
    Réponses: 12
    Dernier message: 04/09/2007, 09h04
  5. mon application exportée en jar ne trouve pas le driver mysql
    Par poupouille dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 22/08/2007, 09h03

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