Archive jar qui ne se lance pas

Résolu/Fermé
Kellodie - 5 juin 2018 à 08:46
 Kellodie - 12 juin 2018 à 09:00
Bonjour,

J'ai un problème suite à une archive jar que j'essaie de faire. À priori, tout est bon, mais le fichier .jar ne veut pas se lancer. Or, si je met ce fichier sur une clé USB et que j'essaie de l'ouvrir à partir de celle-ci, alors le fichier s'ouvre et fonctionne sans problème. J'ai essayé de lancer le fichier sur mon ordinateur à partir de l'invite de commandes en mode Administrateur, et il m'affiche le message suivant : "Impossible de trouver ou charger la classe principale". Et étonnamment, le même message s'affiche pour le fichier présent sur la clé USB (fichier qui s'ouvre sans problème). Cela fait déjà quelques temps que je me penche sur le problème, en vain.

Est-ce que quelqu'un aurait une idée de comment résoudre ce problème, et d'où cela pourrait venir ?

Merci beaucoup.

1 réponse

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
5 juin 2018 à 11:27
Bonjour,

Est-ce que tu pourrais décompresser le jar (c'est un fichier zip), nous copier-coller l'arborescence du dossier (
tree /F
sur Windows) et le contenu du fichier
META-INF/MANIFEST.MF
?
0
Voici l'arborescence de mon fichier compressé :
https://image.noelshack.com/fichiers/2018/23/2/1528194853-sans-titre.png
https://image.noelshack.com/fichiers/2018/23/2/1528194879-sans-titre.png

Et voici le contenu du fichier MANIFEST.MF :
Manifest-Version: 1.0
Created-By: 1.8.0_161 (Oracle Corporation)
Main-Class: Main


PS : Je confirme qu'il y a bien un retour à la ligne dans ce fichier

Merci
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015 > Kellodie
5 juin 2018 à 13:21
Il y a peut-être plusieurs versions de Java sur ton système, qui feraient que le Java appelé par l'invite de commande (dans le PATH) ne serait pas le même Java que celui utilisé par Windows (programme par défaut pour l'extension .jar)

Tu peux faire un
where java
en ligne de commande. En général Windows utilise celui dans
C:\ProgramData
alors que dans le PATH on met plutôt celui de
C:\Program Files
, il faudrait faire des
java -version
pour savoir ce qu'il en est. Par exemple
"C:\ProgramData\Oracle\Java\javapath\java.exe" -version
(avec ma config)

Remarque : pour être sur la même longueur d'onde, c'est la commande
java -jar fichier.jar
que tu utilises ?
Du coup tu peux également essayer avec les différents java.exe listés pour trouver ceux qui fonctionnent.
0