Jar exécutable [Résolu]

michoubidoumichel 1 Messages postés vendredi 7 novembre 2014Date d'inscription 7 novembre 2014 Dernière intervention - 7 nov. 2014 à 13:11 - Dernière réponse :  michoubidoumichel
- 14 nov. 2014 à 12:36
bonjour,
Si j'arrive à créer un jar exécutable, que ce soit directement à partir d'éclipse où depuis la console, je n'arrive pas à le faire exécuter par un double clic ou en le lançant.

Quand je le crée à partir d'éclipse en faisant export je devrais indiquer la main classe dans la fenêtre "jar manifest specification" mais le rectangle Main class qui devrait se trouver en bas de la fenêtre n'apparaît pas, alors comment faire?

Ma version de java est jdk1.7.0_51
merci de m'aider
Afficher la suite 

Votre réponse

2 réponses

KX 15736 Messages postés samedi 31 mai 2008Date d'inscription 23 septembre 2018 Dernière intervention - 7 nov. 2014 à 23:13
0
Merci
Bonjour,

Par exemple tu as un package hello et une classe HelloWorld :

package hello;
import javax.swing.JOptionPane;
public class HelloWorld {
    public static void main(String[] args) {
        JOptionPane.showMessageDialog(null, "Hello World!", "hello", JOptionPane.INFORMATION_MESSAGE);
    }
}

Si tu travailles avec Eclipse tu as un dossier "bin" dans ton projet avec les fichiers .class obtenus après compilation.

Tu y créés un dossier META-INF (en majuscules, c'est important) dans lequel tu créés un fichier MANIFEST.MF

Tu auras donc une hiérarchie de fichiers comme ceci :

└ bin
   ├ META-INF
   │  └ MANIFEST.MF
   └ hello
       └ HelloWorld.class


Dans le fichier MANIFEST.MF tu mets ceci :

Manifest-Version: 1.0
Main-Class: hello.HelloWorld
 

Très important : ne pas oublier la dernière ligne vide.

Ensuite tu créés un fichier zip avec les deux dossiers (META-INF et hello), et tu changes l'extension du .zip en .jar

Maintenant tu as un jar exécutable qui va lancer la classe HelloWorld.
Commenter la réponse de KX
michoubidoumichel - 14 nov. 2014 à 12:36
0
Merci
bonjour,

mille fois merci, je suis désolé de ne pas avoir répondu plus tôt mais j'étais absent pendant le pont du 11 novembre.

je suis arrivé à un résultat en installant la JVM et Eclipse sur un autre pc, J'ai créé un fichier .bat et j'ai mis la commande java -jar <nom du fichier>.jar et j'ai exécuté le fichier depuis la console (MS DOS), j'ai eu le temps de voir le contenu du fichier MANIFEST.

Mais l'exécution du jar ne se faisait pas en double-cliquant dessus.

J'ai donc suivi tes conseils, effectivement, je n'avais pas créé de dossier META-INF c'est probablement pour ça que ça ne marchait pas.

Après avoir suivi tes instructions, maintenant ça marche, je suis bien content car ça fait 3 semaines que je suis dessus, mon cours ne parlait pas de ce dossier META-INF, je ne pouvais pas deviner.

merci encore
Commenter la réponse de michoubidoumichel

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.