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

Entrée/Sortie Java Discussion :

comment intégrer un fichier .jar pour utiliser ses classes


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 130
    Par défaut comment intégrer un fichier .jar pour utiliser ses classes
    Bonjour,

    Je dois écrire un code qui utilise des classes contenu dans un fichier .jar.
    Mon problème et où je met ce fichier, et comment je l'intègre pour que je puisse utilisé ses classes.
    Svp, cous pouvez m'aider.

    et je veux que mon code marche sous windows et linux.
    Merci d'avance pour votre aide

  2. #2
    Membre éclairé Avatar de Balbuzard
    Profil pro
    Inscrit en
    Août 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 381
    Par défaut
    je sais pas si ça va marcher, mais essaie ceci :

    - décompresse ton jar avec winzip ou autre dans ton workspace
    - crée un nouveau projet java qui a le même nom que le dossier contenu les fichiers décompressés du JAR. Reconstruit le projet issu du JAR avec le dossier pour les fichiers .class. Ce n'est pas grave si tu n'as pas les fichiers sources .java
    - dans ton nouveau projet, tu importes les classes nécessaires,
    - il devrait te mettre des erreurs dans tes imports, dans ce cas, clic droit dans ton projet, puis 'build path', 'configure build path', une fenêtre apparait.
    - choisis l'onglet 'projects' puis 'add' et dans la liste, tu devrais trouver le projet créé à partir du JAR décompressé.

    Pour l'exécution, il faut que tes JAR soient dans le même dossier.

    EDIT : je suis partir dde l'hypothèse que tu bossais avec Eclipse... :-S

  3. #3
    Invité
    Invité(e)
    Par défaut
    Salut,
    Tu dois renseigner le classpath pour dire où sont les librairies externes. Tu développes avec quoi ? un ide ? tu compiles à la main ?
    Cherche dans la faq le mot classpath tu y trouveras ton bonheur.
    Cela est supporté bien évidcemment par toutes les jvm, et encore heureux sinon java serait très limité...

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 130
    Par défaut
    MErci pour les reponses
    J'ai trouvé une commande sous linux qui me permet d'utilisé les fichiers jar
    javac -jar fichier.jar -cp "." nomprog.java
    mais il m'affiche le message:
    Unable to access jarfile fichier.jar

  5. #5
    Max
    Max est déconnecté
    Expert confirmé

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Par défaut
    Salut.

    Attention, l'argument -jar permet d'exécuter une classe java se trouvant à l'intérieur d'un jar, pas de lier ce même jar. Dans ton cas, lier ce jar suffira :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javac -classpath ./fichier.jar nomprog.java
    Pour info, (il me semble) cette commande fonctionnera également sous windows.

    A+

    PS : n'hésite pas à consulter la FAQ, elle est d'une très grande utilité

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 383
    Par défaut
    Attention, tu dois non seulement spécifier ce jar à la compilation (javac) mais le jar doit aussi être dans ton classpath lors de l'exécution du programme.

  7. #7
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 130
    Par défaut
    Merci pour votre aide la compilation a très bien marché.
    Mais au moment de l'exécution ça m'affiche l'erreur suivante:
    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
     
    Exception in thread "main" java.lang.NoClassDefFoundError: it/unimi/dsi/fastutil/io/RepositionableStream
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        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:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at F.<init>(Warc.java:32)
        at Warc.main(Warc.java:13)
    Vous avez une idée svp

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par slevy Voir le message
    Attention, tu dois non seulement spécifier ce jar à la compilation (javac) mais le jar doit aussi être dans ton classpath lors de l'exécution du programme.
    Tu as bien pris ca en compte ?

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/11/2008, 12h36
  2. Comment intégrer un fichier wave dans une Jar exécutable?
    Par HNoury dans le forum Général Java
    Réponses: 7
    Dernier message: 22/08/2008, 22h52
  3. Réponses: 3
    Dernier message: 29/01/2007, 10h12
  4. [Jar]comment creer un fichier JAR?
    Par ed_hunter dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 24/05/2004, 11h44
  5. [Debutant] probleme pour utiliser les classes d'un .jar
    Par pissek dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 12/05/2004, 18h21

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