Problème exécution .jar en dehors de l'IDE (Eclipse) [Résolu]

Farm 3 Messages postés dimanche 27 mars 2011Date d'inscription 31 mars 2011 Dernière intervention - 28 mars 2011 à 22:26 - Dernière réponse : Farm 3 Messages postés dimanche 27 mars 2011Date d'inscription 31 mars 2011 Dernière intervention
- 31 mars 2011 à 20:40
Bonjour,

Voilà, je suis débutant en Java et ça fait bien deux semaines que je cherche à résoudre un problème avec mon .jar, j'ai lu une bonne trentaine de topics que ce soit pour l'utilisation des mes IDE (Eclipse Helios, Netbeans 6.9.1), pour les variables systèmes, pour le .classpath, pour la main class, pour la casse dans le MANIFEST.MF, pour le MANIFEST.MF lui même; bref on peut dire que j'ai presque tout essayé sauf LA solution, je suis perdu ...

Donc je vais vous expliquer toutes mes aventures tout ce que j'ai fait ce que j'ai vu et ce que j'ai modifié afin que vous puissiez m'aider car je désespère.

Pour commencer : j'avais acheté un livre permettant d’apprendre le langage Java (pour Java 5 et 6) dont je ne citerai pas le nom.

A l'intérieur de ce dernier était fourni un CD-ROM comprenant Eclipse Helios pour plusieurs plate-formes (pour ma part c'est Windows) ainsi qu'un JDK (versions 1.6.0_21 , appelé JDK6 Update21 sur le site d’Oracle) pour plusieurs plate-formes encore une fois.



J'ai donc commencé par installer JDK comme indiqué puis décompresser Eclipse dans un fichier à part comme indiqué aussi.

J'ai donc créé un projet Java sans rien toucher aux configurations, mon code était bon il venait du livre lui-même, le programme marchait dans la console de l'IDE.

-> Agrandissement

Je l'ai donc exporté en "JAR File" la première fois sans préciser la main class ni rien d’autre. Je me suis donc retrouvé avec un .jar comme prévu.

-> Agrandissement

Donc récapitulons : j'ai JDK 1.6.0_21 installé (le JRE6 étant inclus dedans je l'ai donc aussi) Eclipse Helios et un .jar sans défaut de codage, marchant dans la console d'Eclipse.

La je double clic sur le .jar : premier message d'erreur de la par de la Machine Virtuel Java :

-> Agrandissement

Notez que le programme cherche à se lancer lorsque je double clique sur le .jar.

J'ai ensuite essayé de le lancer par la console DOS : même message d’erreur de la Machine Virtuel Java.

Ensuite j'ai fait des recherches sur la main class et ai trouvé des infos qui m'ont amené à définir la main class via Eclipse, résultat : je me retrouve donc avec en Main-Class dans le fichier MANIFEST.MF mon package et ma main class.



-> Agrandissement
-> Agrandissement

Je progresse : il n'y a plus de problème avec la Machine Virtuel Java mais en double cliquant sur mon .jar la console DOS s'ouvre et se referme instantanément et automatiquement : ce que j'en ai déduit, après avoir lancer le fichier via la console DOS c’est que c’est dû au message d’erreur suivant qui fait que la console DOS s’ouvre et se referme immédiatement après le message d’erreur.

Désolé il manque une partie du screenshoot où il est censé être inscrit dans la console DOS avant le screenshoot suivant :
C:\Users\Killian\Desktop>HelloWorld.jar
-> Agrandissement

De plus en essayant de créer un .jar (sans différence au niveau du résultat par rapport à Eclipse une fois le .jar créer) avec la commande "javac", la commande ne marchait pas dans la console DOS pour compiler un fichier .java en .class.

-> Agrandissement

Pour moi tout est parfait en plus le programme arrive à se lancer avec la commande : "java -jar HelloWorld.jar" et fonctionne parfaitement. Donc je suis perdu.

-> Agrandissement

A partir de ce moment j'ai cherché sur plusieurs sites plusieurs topics sans résultats apparents : toutes modifications que je faisais ne changeaient rien : ni sur le résultat ni sur le message d'erreur.

Je me suis posé la question de savoir si c'était à cause du JDK ou d'Eclipse. J'ai donc désinstallé tous les logiciels liés au JDK et supprimé tout ce qui se rapportait à Eclipse et Eclipse y compris.

J'ai donc tout réinstallé après; Eclipse j'ai repris la même version du JDK, j'ai tour à tour installé différents Update de JDK6 (l’Update 24 et l'Update 21) pour au final (actuellement) finir avec l'Update 21 (soit JDK1.6.0_21).

Résultat de l’installation de JDK1.6.0_21 :

-> Agrandissement

J'ai trouvé un sujet expliquant comment donné le chemin du JDK à la variable d'environnement "Path". Miracle j'ai avancé un petit peu : la commande "javac" fonctionne dans la console DOS.



-> Agrandissement
-> Agrandissement

Mais lorsque j'ai recréé mon .jar le double clique ne fait rien, rien ne se lance. Pareil avec la console DOS : quand j'écris "HelloWorld.jar" qui est le nom de mon fichier .jar, rien ne se passe. Et lorsque j’introduis la commande "java" devant "HelloWorld.jar" afin de le lancer « manuellement » le .jar, le message d'erreur suivant s'affiche :

-> Agrandissement

Maintenant je suis donc obligé de faire la commande "java HelloWorld.jar" pour lancer mon programme mais j'obtient toujours un message d’erreur.

Donc en gros résultat de la désinstallation/réinstallation : le double clique ne fonctionne plus (en tout cas on ne voit plus la fenêtre DOS se lancer), la commande « javac » refonctionne puisque j'ai ajouté le chemin du JDK à la variable d'environnement et le message d'erreur du .jar s'affiche toujours.

J'ai aussi essayé de générer le .jar avec la commande "javac" donc j'ai créé le code en .txt ainsi que le MANIFEST.MF et ensuite faire "javac MANIFEST.MF HelloWorld.class"

Tout se créé parfaitement sauf que comme avec le .jar généré par Eclipse le double clique ne marche pas et quand je me débrouille comme dit précédemment (console DOS) pour le lancer le message d'erreur évoqués de nombreuses fois s'affiche.

J'ai aussi essayé avec NetBeans 6.9.1 sans succès non plus : message d'erreur et double clic ne fonctionne pas.

Bon et bien voilà je pense que tout est dit donc, je rajoute que j'ai essayé d'associer au projet Java (avec Eclipse) différents options concernant la Machine Virtuel

-> Agrandissement

Il me semble, après essais, que cela ne change rien, pour mon problème en tout cas.


Donc mes principales questions sont :

-Comment rendre de nouveau actif le double clic sur le .jar ?

-Que faire pour résoudre le problème du message d’erreur de la console DOS ?

Donc voilà j'espère que vous avez assez de détails ( :p ) pour m'aider à résoudre ce problème qui j'espère sera résolu ce qui, en plus de m'aider à moi, aidera de nombreux autres débutants ayant eu les mêmes problèmes.

Merci à ceux qui ont pris la peine de lire ce post en entier et merci par avance de vos réponses.


~Farm~
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
kaloway 358 Messages postés jeudi 24 octobre 2002Date d'inscription 30 mars 2011 Dernière intervention - 30 mars 2011 à 09:18
3
Merci
essai la commande java comme ceci

java -jar HelloWorld.jar

Merci kaloway 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de kaloway
Meilleure réponse
Farm 3 Messages postés dimanche 27 mars 2011Date d'inscription 31 mars 2011 Dernière intervention - 30 mars 2011 à 18:13
3
Merci
Bonsoir, la commande marche, je le savais, c'est justement ça mon problème, pourquoi quand je lance tout simplement mon .jar (donc sans java -jar) on m'indique un message d'erreur ?
Pourquoi je suis obligé de saisir cette commande pour que ça fonctionne ?...

Merci Farm 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de Farm
Meilleure réponse
Farm 3 Messages postés dimanche 27 mars 2011Date d'inscription 31 mars 2011 Dernière intervention - 31 mars 2011 à 20:40
3
Merci
Bonsoir, j'ai fini par trouver d'où venait le problème.
Ne sachant pas comment clore le sujet, je laisse un admin à moins que quelqu'un me dise comment le faire merci.
Bonne soirée


~Farm~

Merci Farm 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de Farm

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.