web-dev-qa-db-fra.com

Comment créer un fichier jar avec des bibliothèques externes incluses dans Eclipse?

J'en ai fini avec le projet qui se connecte à la base de données (MySQL). Maintenant, je veux exporter le projet en tant que jar. Mais je ne sais pas comment inclure ses dépendances externes? Existe-t-il un moyen de le faire dans Eclipse ou devrais-je utiliser des scripts pour cela?.

83
Ghanta Sairam

Lorsque vous exportez votre projet en tant que "jar exécutable" (clic droit sur le projet -> Exporter -> jar exécutable), vous avez la possibilité de regrouper toutes les dépendances dans le jar généré. Il existe également deux autres moyens (voir la capture d'écran) d'exporter vos bibliothèques: tenez compte des licences lorsque vous choisissez la méthode d'empaquetage à utiliser. 

Package libraries

La liste déroulante 'lancer la configuration' contient des classes contenant une méthode main(String[]). La classe sélectionnée est lancée lorsque vous exécutez le pot.

L'exportation en tant que jar exécutable utilise les dépendances de votre chemin de construction (Clic droit sur le projet -> Chemin de construction -> Configurer le chemin de construction ...). Lorsque vous exportez en tant que jar «normal» (non exécutable), vous pouvez sélectionner n’importe quel fichier de votre (vos) projet (s). Si vous avez les bibliothèques dans votre dossier de projet, vous pouvez les inclure, mais les dépendances externes, par exemple maven , ne peuvent pas être incluses (pour les projets maven, recherchez ici ). 

132
Joost

Vous pouvez utiliser le fichier jar Export-> Java-> Runnable pour créer un jar contenant ses dépendances.

Vous pouvez également utiliser le plug-in fatjar Eclipse pour regrouper des fichiers jar.

8
Attila

Vous pouvez cliquer avec le bouton droit sur le projet, cliquer sur exporter, taper 'jar', choisir 'Exécuter le fichier JAR exécutable'. Là vous avez l'option 'Extraire les bibliothèques requises dans le JAR généré'.

5
maerch

Personnellement,

Aucune des réponses ci-dessus n'a fonctionné pour moi, je continuais à avoir des erreurs NoClassDefFound (j'utilise Maven pour les dépendances). Ma solution consistait à créer à l'aide de "mvn clean install" et à utiliser le "[projet] -jar-with-dependencies.jar" créé par cette commande. De même, dans Eclipse, vous pouvez cliquer avec le bouton droit de la souris sur le projet -> Exécuter en tant que -> Installer Maven. Les fichiers JAR seront placés dans le dossier cible.

3
SMKS

Si vous souhaitez exporter tous les fichiers JAR d'un projet Web Java, ouvrez le dernier fichier WAR généré avec un outil Zip (par exemple, 7-Zip), accédez au dossier/WEB-INF/lib /. Vous trouverez ici tous les fichiers JAR dont vous avez besoin pour ce projet (voir la liste dans "Bibliothèques référencées").

2
Peter Saitz

Pour générer un fichier jar dans Eclipse, cliquez avec le bouton droit de la souris sur le projet pour lequel vous souhaitez générer, sélectionnez Exporter> Java> Fichier Jar exécutable. 

 enter image description here

 enter image description here

Son create jar qui inclut toutes les dépendances de Pom.xml, mais veuillez vous assurer du problème de licence si vous utilisez des dépendances tierces pour votre application.

1
Rohit

S'il s'agit d'un projet Java autonome (méthode principale), alors aucun chemin spécifique ne met tous les fichiers JAR du projet, ni aucun chemin spécifique, puis cliquez avec le bouton droit de la souris sur le projet -> exportation -> Fichier exécutable -> sélectionnez la configuration de déjeuner et le traitement de la bibliothèque. puis choisissez l’option du bouton radio "Mettre les bibliothèques requises dans le fichier jar généré" -> Terminer.

Ou

Si vous avez un projet Web, placez tous les fichiers JAR dans le dossier web-inf/lib et procédez de la même manière.

0
JitenS

Lorsque vous exportez votre source dans un fichier JAR, assurez-vous de sélectionner l’option JAR pouvant être exécutée dans les options. Sélectionnez ensuite si vous souhaitez conditionner tous les fichiers jar de dépendance ou les inclure directement dans le fichier jar. Cela dépend du projet sur lequel vous travaillez.

Vous exécutez ensuite le fichier jar directement par Java -jar example.jar. 

0
Charan Raj