[Java] Exécution d'un jar avec jars externes
mike220684
Messages postés
12
Statut
Membre
-
NewDev -
NewDev -
Bonjour.
Je cherche à exécuter mon application java sous forme de jar en ligne de commande. Seulement il utilise des librairies externes (en .jar). J'essaye de le lancer en ligne de commande, mais il me dit qu'il ne trouve pas une classe (NoClassDefFound error) qui est dans un jar externe.
J'ai :
MonProjet.jar
JarExterne.jar
JarExterne2.jar
Quel est la commande à taper pour prendre en compte tous les jar ?
Je cherche à exécuter mon application java sous forme de jar en ligne de commande. Seulement il utilise des librairies externes (en .jar). J'essaye de le lancer en ligne de commande, mais il me dit qu'il ne trouve pas une classe (NoClassDefFound error) qui est dans un jar externe.
J'ai :
MonProjet.jar
JarExterne.jar
JarExterne2.jar
Quel est la commande à taper pour prendre en compte tous les jar ?
A voir également:
- Cherch jav gam jar
- Télécharger jeux java jar - Télécharger - Jeux vidéo
- Site de telechargement de jeux jar et jad - Forum Mobile
- Ouvrir fichier jar - Forum Windows
- Ouvrir un fichier .jar avec java ✓ - Forum Java
- Telecharger jeux java - Forum Mobile
3 réponses
J'ai essayé des trucs du genre :
java -jar MonProjet.jar -classpath JarExterne.jar;JarExterne2.jar mais ça ne marche pas...
java -jar MonProjet.jar -classpath JarExterne.jar;JarExterne2.jar mais ça ne marche pas...
Réponse tardive, mais si ça peut aider quelqu'un d'autre :).
Ton projet jar que tu exécutes ne peut pas trouver les jars externes car il ne se sert pas du classpath. A l'exécution, un jar ne peut trouver que les .jar qu'il y a dans ton projet jar via le manifest.
Deux possibilités :
* intégrer les jars externes dans ton jar via le manifest
* rajouter ton projet jar à ton classpath et lancer ta classe où il y a un main directement avec "java taclasse" (mais ce n'est pas trop beau, car entre autres, cela suppose que tu sais où est le(s) main(s))
Ton projet jar que tu exécutes ne peut pas trouver les jars externes car il ne se sert pas du classpath. A l'exécution, un jar ne peut trouver que les .jar qu'il y a dans ton projet jar via le manifest.
Deux possibilités :
* intégrer les jars externes dans ton jar via le manifest
* rajouter ton projet jar à ton classpath et lancer ta classe où il y a un main directement avec "java taclasse" (mais ce n'est pas trop beau, car entre autres, cela suppose que tu sais où est le(s) main(s))
Bonjour,
J'ai le même problème que cité ci-dessus, StartBuster peux tu me dire comment faire ta première solution à savoir "intégrer les jars externes dans ton jar via le manifest" car dans mon jar que je génère avec Ant il y a le jar de la librairie externe à l'intérieur de mon jar mais ca ne fonctionne pas. Peux tu me montrer un exemple de manifest, stp.
Cdt
J'ai le même problème que cité ci-dessus, StartBuster peux tu me dire comment faire ta première solution à savoir "intégrer les jars externes dans ton jar via le manifest" car dans mon jar que je génère avec Ant il y a le jar de la librairie externe à l'intérieur de mon jar mais ca ne fonctionne pas. Peux tu me montrer un exemple de manifest, stp.
Cdt
Si tu veux lancer ton projet via une fenêtre Console (DOS ou shell) :
Remarques :
1- je ne fais que confirmer une des solutions (la 2ième) de Starbuster
2- dans le classpath, n'oublies pas le ".;" cela permet d'inclure dans le "chemin des classes" le répertoire courant.