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 :

Compiler avec javac / créer un jar


Sujet :

Java

  1. #1
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut Compiler avec javac / créer un jar
    Je suis depuis trois jours en train de fouiller sur internet et je ne trouve pas de réponse claire pour moi.
    Mon but principal est de créer un fichier .jar.
    J'ai donc cherché sur divers site. Il faut configurer un certain fichier manifest.mf.
    Le voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Manifest-Version: 1.0
    Main-Class: start.Main
    Class-Path: dist\lib\*
    start est le nom de package et Main la classe qui contient la méthode main().
    A noter que par rapport à ce fichier manifest.mf, le package se trouve dans .\build\classes Ceci a été créé par netbeans.

    Ensuite sur mon projet je fais clic droit>clean and build.
    Voici le résultat
    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
    init:
    deps-clean:
    Deleting directory C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\build
    Deleting directory C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\dist
    clean:
    init:
    deps-jar:
    Created dir: C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\build\classes
    Compiling 17 source files to C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\build\classes
    Note: Some input files use or override a deprecated API.
    Note: Recompile with -Xlint:deprecation for details.
    Note: Some input files use unchecked or unsafe operations.
    Note: Recompile with -Xlint:unchecked for details.
    compile:
    Created dir: C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\dist
    Building jar: C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\dist\DriverHelp.jar
    Copy libraries to C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\dist\lib.
    To run this application from the command line without Ant, try:
    java -jar "C:\Users\Brice\Documents\NetBeansProjects\DriverHelp\dist\DriverHelp.jar"
    jar:
     
    BUILD SUCCESSFUL (total time: 0 seconds)

    J'ai bien en fichier .jar de créé mais à l'éxécution j'ai un "fatal exception occurred".

    J'ai fais des recherches dessus et j'ai voulu compiler à la main, classe par classe mais j'ai un "javac n'est pas reconnu en tant que commande interne".

    Il parait qu'il faut définir une variable d'environement : PATH avec pour valeur : c:\Programmes\Java\jdk1.6.0_02\bin;%Path%

    Je n'ai toujours pas de javac dispo.

    Je n'ai certainement pas tout fais je ne vois pas par où continuer. Merci de votre aide

    Brice

  2. #2
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 387
    Points : 3 535
    Points
    3 535
    Billets dans le blog
    1
    Par défaut
    Bonjour !

    Il parait qu'il faut définir une variable d'environement : PATH...
    yep, dans ton PATH il faut avoir le chemin vers ton java/bin

    Et tu l'as fait ?

  3. #3
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Vérifie que "javac.exe" se trouve dans "c:\Programmes\Java\jdk1.6.0_02\bin". La modification de la variable d'environnement "PATH" devrait rendre disponible cette commande.
    Pour le jar construit, ouvre-le comme une archive ZIP, et vérifie que le fichier "Main.class" se trouve dans le répertoire "start".

  4. #4
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    Citation Envoyé par Golgotha Voir le message
    Bonjour !



    yep, dans ton PATH il faut avoir le chemin vers ton java/bin

    Et tu l'as fait ?
    C'est là que je ne comprends pas. Je l'ai définie et ça ne change rien...

  5. #5
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    Citation Envoyé par dinobogan Voir le message
    Vérifie que "javac.exe" se trouve dans "c:\Programmes\Java\jdk1.6.0_02\bin". La modification de la variable d'environnement "PATH" devrait rendre disponible cette commande.
    Pour le jar construit, ouvre-le comme une archive ZIP, et vérifie que le fichier "Main.class" se trouve dans le répertoire "start".
    Oui, il y a bien un javac.exe dans le repertoire spécifié.
    Oui, il y a bien un fichier Main.class dans le répertoire start.

    Merci pour vos réponses

  6. #6
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 387
    Points : 3 535
    Points
    3 535
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par oneagaindoguys Voir le message
    C'est là que je ne comprends pas. Je l'ai définie et ça ne change rien...
    Verifie que tu as bien mis le lient vers le fichier bin du JDK et non du JRE.

    Attention, redémarre ta console à chaque modification de ta variable PATH.

    Si ça ne va toujours pas, peut tu COPIER/COLLER ta variable PATH ici ?

  7. #7
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    Je redémarre à chaque fois ma console.
    Voici la valeur de la variable PATH : c:\Programmes\Java\jdk1.6.0_02\bin;%Path%

  8. #8
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    J'ai essayé "C:\Program Files\Java\jdk1.6.0_02\bin" et ça à l'air de passer

  9. #9
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 387
    Points : 3 535
    Points
    3 535
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par oneagaindoguys Voir le message
    Je redémarre à chaque fois ma console.
    Voici la valeur de la variable PATH : c:\Programmes\Java\jdk1.6.0_02\bin;%Path%
    la variable Path n'est pas une nouvelle variable d'environnement, tu doit juste ajouter le chemin "c:\Programmes\Java\jdk1.6.0_02\bin" à la fin de la variable Path existante dans ton system.

  10. #10
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 16
    Points
    16
    Par défaut
    Bonjour,

    J ai un peu le meme soucis, cad j ai mon fichier jar vec toutes mes class et le manifest par defaut... il faut donc que je le modifie... le pb est que une fois reinjecte dans mon .jar je ne peux pas le lancer car le fichier jar est corrompu...

    Que faire?

    merci

  11. #11
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 16
    Points
    16
    Par défaut
    Au temps pour moi, c'est réglé.

  12. #12
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    Lorsque je compile à la main, il ne voit pas mes librairies externes.
    Mon fichier manifest est bon ou pas ?
    Merci d'avance

  13. #13
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Citation Envoyé par oneagaindoguys Voir le message
    Lorsque je compile à la main, il ne voit pas mes librairies externes.
    Mon fichier manifest est bon ou pas ?
    Merci d'avance
    Rien à voir avec le fichier manifest.

  14. #14
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    Ok.
    Alors que dois-je faire pour pouvoir bien compiler et avoir un jar executable ?
    Merci

  15. #15
    Membre confirmé Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Points : 554
    Points
    554
    Par défaut
    Citation Envoyé par oneagaindoguys Voir le message
    Je redémarre à chaque fois ma console.
    Voici la valeur de la variable PATH : c:\Programmes\Java\jdk1.6.0_02\bin;%Path%
    J'arrive peut être après la tempête, mais le répertoire Programmes n'existe pas il me semble, même sous vista... Il apparaît dans l'explorateur comme étant nommé "Programmes" mais s'appelle en fait "Program Files"... Les joies de vista

  16. #16
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    Oui merci j'avais réussi à voir l'erreur.
    Maintenant le problème c'est toujours que je ne peux pas éxecuter le jar parce que j'utilise des librairies externes.
    Je ne vois pas comment résoudre ce problème
    Merci

  17. #17
    Membre confirmé Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Points : 554
    Points
    554
    Par défaut
    Tu peux utiliser l'option cp de javac :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javac -cp <répertoire où sont mes bibliotheques> ...

  18. #18
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 387
    Points : 3 535
    Points
    3 535
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Claythest Voir le message
    J'arrive peut être après la tempête, mais le répertoire Programmes n'existe pas il me semble, même sous vista... Il apparaît dans l'explorateur comme étant nommé "Programmes" mais s'appelle en fait "Program Files"... Les joies de vista
    hein ?! t'es sûr ?

    A tour of windows...


    On cache tout finalement avec une interface Bling Bling : Vista
    -----------
    Nème couche de correctif : XP
    -----------
    2ème couche de correction : windows 98
    -----------
    1er couche de correction : windows 95
    -----------
    Code pourris


    Voila comment on se retrouve à défragmenter son DD sous Vista


    Alors qu'il suffit de régler les vrais problème à la base !

  19. #19
    Membre confirmé
    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
    Points : 532
    Points
    532
    Par défaut
    Citation Envoyé par Claythest Voir le message
    Tu peux utiliser l'option cp de javac :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javac -cp <répertoire où sont mes bibliotheques> ...
    Tu pourrais m'en dire plus s'il te plait ?

  20. #20
    Membre confirmé Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Points : 554
    Points
    554
    Par défaut
    Citation Envoyé par oneagaindoguys Voir le message
    Oui merci j'avais réussi à voir l'erreur.
    Maintenant le problème c'est toujours que je ne peux pas éxecuter le jar parce que j'utilise des librairies externes.

    Elles sont où tes librairies externes ? Elles sont bien dans un répertoire non ? Ben mets ce répertoire dans la commande après l'option -cp (entre guillemets s'il y a des espaces dans le nom !!!).

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Compiler avec javac
    Par shayologo dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 14/04/2008, 13h21
  2. compiler avec javac
    Par cerco1 dans le forum Langage
    Réponses: 9
    Dernier message: 18/09/2007, 15h19
  3. probleme lors de la compilation avec javac
    Par Th3dJoBiN dans le forum Langage
    Réponses: 3
    Dernier message: 12/12/2006, 23h16
  4. Comment compiler avec javac des jar sans utiliser -cp
    Par Battosaiii dans le forum Langage
    Réponses: 7
    Dernier message: 06/10/2006, 17h03
  5. Réponses: 27
    Dernier message: 23/03/2006, 07h33

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