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 :

pbm pour lancer un jar


Sujet :

Java

  1. #1
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut pbm pour lancer un jar
    Bonjour,

    Je suis sous netbeans. J'ai un petit prog en plein ecran, qui se lance bien depuis netbeans.
    Mais depuis une console (sous gnu/linux) j'ai ce message d'erreur :

    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
    java -jar BOutils.jar
    Exception in thread "main" java.lang.NoClassDefFoundError: org/jdesktop/application/SingleFrameApplication
    	at java.lang.ClassLoader.defineClass1(Native Method)
    	at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
    	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    	at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    	at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
    	at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    Caused by: java.lang.ClassNotFoundException: org.jdesktop.application.SingleFrameApplication
    	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    	... 12 more
    Could not find the main class: boutils.BOutilsApp. Program will exit.
    Pourquoi arrive t il a se lancer depuis netbeans alors ?
    J'ai garde le dossier dist, avec lib dedans.

    Quelqu'un a une idee svp ?

    Merci d'avance,

    ANDRE Ani
    http://andre-ani.fr

  2. #2
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 688
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 688
    Par défaut
    Tu utilise visiblement une lib externe qui n'est pas incluse dans le jar que tu essaie de lancer. Elle est probablement disponible dans un jar séparé, et il faut donc placer le jar de lib et le jar de ton application dans le même répertoire.
    Si ce n'est pas le cas regarde le fichier META-INF/manifest.mf de ton jar. Il devait contenir dans sont classpath, le chemin vers tes lib externes

  3. #3
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut
    Oui, c'est bien ce que je pense, mais je ne sais pas qu'elle est cette librairie.
    Voila mon manifest :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Manifest-Version: 1.0
    Class-Path: lib/AppFramework-1.0.3.jar lib/swing-worker-1.1.jar lib/swing-layout-1.0.3.jar 
    X-COMMENT: Main-Class will be added automatically by build
    Et dans les librairies, dans les proprietes du projet, j'ai, en plus de ces 3 jars :
    swing application framework
    swing layout extensions

    Je ne vois pas ce qui manque.

  4. #4
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 688
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 688
    Par défaut
    Apparement tu utilises le Swing Application framework. Il devrait être inclus dans java 7. En attendant, la version en cours est utilisable sous forme de bibliothèque. Netbeans l'inclut directement si tu choisis de créer un projet de type "Desktop Application".

    Normalement quand Netbeans crée le jar de l'application, il fournit également celui des bibliothèques. Tu dois avoir un dossier "lib" dans ton répertoire dist que tu doit garder dans le même répertoire que ton jar.

  5. #5
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut
    Oui, c'est bien cela. Et j'ai bien cela dans le lib inclut dans le dossier dist. C'est pour cela que je ne comprends pas pourquoi j'ai cette erreur.

  6. #6
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 540
    Par défaut
    Dans ton manifest il ne te manque pas le :
    Main-Class: <nomDuPaquetage>.<NomDuMain>
    ?

  7. #7
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut
    Effectivement, il manquait ceci. Mais en fait, ça n'a pas resolu le pbm...
    J'ai tjs l'erreur.

    Voila mon manifest :

    Manifest-Version: 1.0
    Class-Path: lib/AppFramework-1.0.3.jar lib/swing-worker-1.1.jar lib/swing-layout-1.0.3.jar
    Main-Class: boutils.BOutilsApp
    X-COMMENT: Main-Class will be added automatically by build

  8. #8
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 688
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 688
    Par défaut
    Ajouter le Main-Class n'était pas nécessaire, Netbeans le rajoute automatiquement au moment de construire le jar:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    X-COMMENT: Main-Class will be added automatically by build
    Si tu lances bien ta ligne de commande depuis le répertoire "dist" avec a l'interieur le jar de ton appli et le répertoire, lib contenant tes bibliothèques, j'ai du mal a comprendre pourquoi ça ne fonctionne pas.

  9. #9
    Membre éclairé Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 762
    Par défaut
    eh bien moi aussi je ne comprends pas pk ça ne marche pas la...
    J'ai tjs ce satane message d'erreur.

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/08/2009, 20h29
  2. probleme pour lancer un jar en ligne de commande
    Par progamer54 dans le forum Langage
    Réponses: 11
    Dernier message: 05/12/2007, 15h35
  3. [javac] code pour lancer la compilation des classes
    Par viena dans le forum Général Java
    Réponses: 6
    Dernier message: 19/07/2004, 17h41
  4. Réponses: 2
    Dernier message: 22/04/2004, 13h28
  5. [Kylix] probleme pour lancer le shell
    Par miky dans le forum EDI
    Réponses: 5
    Dernier message: 13/08/2002, 09h39

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