[RESOLU] Problème exécution .jar

Problème exécution .jar [RESOLU] - Java - Programmation

Marsh Posté le 26-06-2009 à 10:23:57    

Bonjour,  
 
J'ai un problème lorsque je double clik sur le .jar que je viens de créer. Pourtant que je le test depuis NetBeans, je n'ai aucun problème avec.  
 
package applicationdraftsurvey;  
 
import java.awt.event.ActionEvent;  
import java.awt.event.ActionListener;  
import java.awt.*;  
import javax.swing.*;  
 
public class ApplicationDraftSurvey {  
 
public static void main(String[] args) {  
 
// Création d'un panneau  
JPanel contenuFenetre = new JPanel();  
 
// Affectation d'un gestionnaire de présentation à ce panneau  
contenuFenetre.setLayout(null);  
 
// Création du cadre et ajout du panneau  
JFrame cadre = new JFrame();  
cadre.setContentPane(contenuFenetre);  
 
// Paramêtre du cadre  
cadre.setTitle("Draft Survey" );  
cadre.setSize(700,330);  
cadre.setLocationRelativeTo(null); // Pour centrer la fenêtre  
cadre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
 
// On rend la fenêtre(cadre) visible  
cadre.setVisible(true);  
}  
}  
 
J'ai compiler avecNetBeans et depuis MS-Dos pour voir si le problème persistait et c'est le cas.  
Avec MS-Dos, je me place sur le repertoire qui contient le ficiher .java et je tape "javac ApplicationDraftSurvey.java"  
Jusque là ça à l'air d'aller.  
 
Puis je tape java ApplicationDraftSurvey et là ça ne va plus mais je ne comprend pas.  
 
voilà ce que j'obtiens:  
 
http://img530.imageshack.us/img530/5202/probleme.jpg
 
Voilà je pense avoir tout dis.


Message édité par fmdcc le 27-06-2009 à 13:04:33
Reply

Marsh Posté le 26-06-2009 à 10:23:57   

Reply

Marsh Posté le 26-06-2009 à 10:43:19    

http://www.fouin.org/pommedefennec/images/smiles/GS/GS_5d92216555317bd9bc79943018263139.png

 

sinon, la tu n'exécute pas un jar, pour exécuter un jar:

Code :
  1. java -jar nomdujar.jar
 


de plus, comme dans ta classe tu as "package applicationdraftsurvey;", le fichier ApplicationDraftSurvey.java devrait être dans un sous répertoire applicationdraftsurvey et tu devrais le compiler comme ca:

Code :
  1. javac applicationdraftsurvey\ApplicationDraftSurvey.java


puis

Code :
  1. java applicationdraftsurvey.ApplicationDraftSurvey
 

et ca ca marche (en tout cas chez moi avec ton code)


Message édité par pataluc le 26-06-2009 à 10:47:58
Reply

Marsh Posté le 26-06-2009 à 11:17:23    

Merci
 
C'est bien ça, j'ai fait comme tu as dis et ça fonctionne également chez moi.
 
C'était donc cà, à cause de la ligne package que je ne prennais pas en compte.
 
Que dois je faire maintenant pour obtenir un fichier de mon application que je puisse lancer un faisant un double clique depuis l'explorateur windows par exemple?

Reply

Marsh Posté le 26-06-2009 à 11:28:01    

Un JAR justement.

Reply

Marsh Posté le 26-06-2009 à 11:31:00    

dans mon cas je dois taper quoi comme ligne de commande ms-dos?

Reply

Marsh Posté le 26-06-2009 à 11:35:51    

il faut que tu crée un fichier Manifest.mf qui contient ca:

Manifest-Version: 1.0
Main-Class: applicationdraftsurvey.ApplicationDraftSurvey


et ensuite tu construit ton jar avec la commande

Code :
  1. jar cfm applicationdraftsurvey.jar Manifest.mf applicationdraftsurvey


 

Reply

Marsh Posté le 26-06-2009 à 11:48:24    

j'ai un doute sur l'endroit où je dois me trouver pour taper cette commande.
 
Voilà un plan de la structure de mes fichiers:
 
C:\ProjetsJava\applicationdraftsurvey
 
dans ce répertoire j'ai donc en ce moment:
ApplicationDraftSurvey.java
ApplicationDraftSurvey$1.class
ApplicationDraftSurvey$2.class
ApplicationDraftSurvey.class
Manifest.mf

Reply

Marsh Posté le 26-06-2009 à 11:51:32    

tu dois être dans C:\ProjetsJava pour la taper.

Reply

Marsh Posté le 26-06-2009 à 11:58:34    

http://img512.imageshack.us/img512/4568/test3d.jpg
 
J'ai l'impression que la Manifest.mf n'est pas au bonne endroit.

Reply

Marsh Posté le 26-06-2009 à 12:00:36    

oui tu dois le mettre au niveau ou tu tapes la commande, ou alors modifier le chemin dans la commande

Reply

Marsh Posté le 26-06-2009 à 12:00:36   

Reply

Marsh Posté le 26-06-2009 à 12:12:49    

la création du .jar semble bien se passer mais quand je double clique dessus, j'ai une fenetre ms-dos qui apparait très rapidement mais j'ai réussit à l'enregistrer avec imprime écran.
 
http://img44.imageshack.us/img44/7497/prob2.jpg

Reply

Marsh Posté le 26-06-2009 à 12:28:13    

Astuce pour mettre la fenêtre en pause : Tu crées un .bat dans lequel tu écris :

Code :
  1. java -jar nomdujar.jar
  2. pause


Et tu exécutes le .bat.

 

Sinon tu le lances depuis un invité de commande.


Message édité par Deamon le 26-06-2009 à 12:29:09
Reply

Marsh Posté le 26-06-2009 à 13:09:26    

je viens de créer un .bat que j'ai nommé test.bat et enregistré dans c:\ProjetsJava et ça n'a rien changé, la fenetre est apparu un très court instant et a encore disparu.

Reply

Marsh Posté le 26-06-2009 à 13:10:46    

ben écoute, on t'a bien tout mâché le travail, on t'a mis les fichiers tel quel et tout, je sais pas ce qu'il te faut de plus. visiblement tu n'a pas pris trop le temps de chercher avant sur le fonctionnement des jar et tu connais mal java. donc: http://java.developpez.com/faq/ (entre autres ressources très utiles)
 
ceci étant dit, remontre nous tes fichiers *.java, manifest et l'arborescence de tout ca.

Reply

Marsh Posté le 26-06-2009 à 13:25:43    

Voilà comment est organisé en ce moment mon répertoire.
 
http://img146.imageshack.us/img146/5474/dossier1.jpg
 
http://img31.imageshack.us/img31/4527/dossier2.jpg
 
Mon fichier .java n'a pas changé et pour le Manifest.mf c'est celui que tu m'a proposé tout à l'heure:
 
Manifest-Version: 1.0  
Main-Class: applicationdraftsurvey.ApplicationDraftSurvey
 
Je précise que lorsque je fais  
c:\ProjetsJava>java applicationdraftsurvey.ApplicationDraftSurvey
Mon application se lance bien juste après.


Message édité par fmdcc le 26-06-2009 à 13:33:30
Reply

Marsh Posté le 26-06-2009 à 13:34:40    

si tu fais

Code :
  1. c:\ProjetsJava>java -jar applicationdraftsurvey.jar

tu as quoi?

Reply

Marsh Posté le 26-06-2009 à 13:40:42    

l'application se lance correctement.

Reply

Marsh Posté le 26-06-2009 à 13:49:15    

fmdcc a écrit :

l'application se lance correctement.


 :??:  et quand tu mets la même chose dans un .bat ca marche pas? si tu lance le .bat depuis la ligne de commande:

Code :
  1. c:\ProjetsJava>testbat


 
ca marche?

Reply

Marsh Posté le 26-06-2009 à 13:54:35    

C'est bon le .bat fonctionne
j'avais fait une faute de frappe à l'intérieur


Message édité par fmdcc le 26-06-2009 à 13:56:12
Reply

Marsh Posté le 26-06-2009 à 13:56:11    

:D

 

commence par enlever 1. et 2. du fichier, tu dois avoir ca:

java -jar applicationdraftsurvey.jar
pause

 

le 1 et 2 sont les num de lignes du post de Daemon...

 


EDIT: je vois que tu as trouvé ton problème tout seul... ^^ (faute de frappe, hein? :P)

 


Message édité par pataluc le 26-06-2009 à 13:58:38
Reply

Marsh Posté le 26-06-2009 à 13:57:11    

c'est fait ^^ donc le testBat fonctionne correctement et lance mon application.

Reply

Marsh Posté le 26-06-2009 à 13:58:42    

N'oublie pas de passer ton sujet en Résolu. (édite ton premier post http://forum-images.hardware.fr/themes_static/images_forum/1/edit.gif et ajoute [Résolu] au début du titre)

Reply

Marsh Posté le 26-06-2009 à 13:59:35    

mais on est toujours obligé de passer par un fichier .bat?

Reply

Marsh Posté le 26-06-2009 à 14:06:20    

Non tu peux lancer directement le Jar mais l'avantage du bat c'est surtout pour avoir la console derrière donc utile seulement (sauf exception) pour le développeur.

Reply

Marsh Posté le 26-06-2009 à 14:10:33    

mais pour un utilsateur commun qui ne connait rien en developpement et ne sait pas comment fonctionne ms-dos comment créer un .jar dans mon cas?
Là, il n'aurait qu'à double cliquer et l'application se lance sans qu'il voit la fenetre ms-dos.

Reply

Marsh Posté le 26-06-2009 à 14:20:46    

Non mais c'est le développeur qui crée le .jar pas l'utilisateur ! L'utilisateur on lui fournit juste le Jar il double clique dessus et il a son application.

Reply

Marsh Posté le 26-06-2009 à 14:30:09    

Je crée le .jar comme pataluc m'a dit.
 
C:\projetsJava>jar cfm applicationdraftsurvey.jar Manifest.mf applicationdraftsurvey
 
quand je tape ça j'ai un .jar qui se crée:  
applicationdraftsurvey.jar
 
l'ennuis c'est que quand je le lance j'ai toujours cette fenetre qui apparait très rapidement:
 
http://img44.imageshack.us/img44/7497/prob2.jpg
 
Il doit y avoir un problème dans la création du .jar quelques chose de mal renseigné.

Reply

Marsh Posté le 26-06-2009 à 14:31:49    

tu veux dire quand tu le lance en double cliquant dessus?

Reply

Marsh Posté le 26-06-2009 à 14:37:17    

oui c'est bien ça.

Reply

Marsh Posté le 26-06-2009 à 14:39:31    

sous l'explorateur windows, quand tu vas dans
- outils > options des dossiers
- onglet types de fichiers > jar
- avancé > modifier  
 
tu as quoi?

Reply

Marsh Posté le 26-06-2009 à 14:45:05    

J'ai ça
 
http://img30.imageshack.us/img30/3051/typefichier.jpg

Reply

Marsh Posté le 26-06-2009 à 14:45:32    

et quand tu cliques sur modifier à droite?


Message édité par pataluc le 26-06-2009 à 14:45:42
Reply

Marsh Posté le 26-06-2009 à 14:55:22    

http://img191.imageshack.us/img191/2732/typefichier2.jpg
 
Il y en a 2 car si je me souviens bien, j'ai le java.exe qui se trouve dans  
 
C:\Program Files\Java\jdk1.6.0_14\bin
 
et celui qui se trouve dans
 
C:\Program Files\Java\jre6\bin
 


Message édité par fmdcc le 26-06-2009 à 14:57:06
Reply

Marsh Posté le 26-06-2009 à 14:56:59    

non, dans avancé> modifier

Reply

Marsh Posté le 26-06-2009 à 15:01:46    

http://img191.imageshack.us/img191/9639/typefichier3.jpg

Reply

Marsh Posté le 26-06-2009 à 15:05:21    

ouep, ben a moins que la fin de la seconde ligne ("application utilisée..." ) soit différente, j'ai exactement la même config et ca marche pour moi...  
 
je sais plus quoi te dire.

Reply

Marsh Posté le 26-06-2009 à 15:07:24    

"C:\Program Files\Java\jre6\bin\javaw.exe" -jar "%1" %*
 
J'ai ça à la fin.

Reply

Marsh Posté le 26-06-2009 à 15:10:00    

pareil.
 
du coup, sous dos, tape:
 

Code :
  1. "C:\Program Files\Java\jre6\bin\javaw.exe" -jar "C:\projetsJava\applicationdraftsurvey.jar"

pour voir... en te mettant ailleurs que dans C:\projetsJava.

Reply

Marsh Posté le 26-06-2009 à 15:15:10    

je comprend pas comment taper cette ligne car il n'y à rien devant.
 
que dois je mettre si je me met sur C:\ ?

Reply

Marsh Posté le 26-06-2009 à 15:17:04    

tu la tape sous dos:

Code :
  1. c:\> "C:\Program Files\Java\jre6\bin\javaw.exe" -jar "C:\projetsJava\applicationdraftsurvey.jar"

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed