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

89

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

Ghanta Sairam
la source
Comment comptez-vous livrer l'application. à l'utilisateur final? Un réseau / Internet, un disque ou une clé USB, .. autre chose? Est-ce que l'application. avez une interface graphique?
Andrew Thompson

Réponses:

140

Lorsque vous exportez votre projet en tant que `` jar exécutable '' (souris droite sur le projet -> Exporter -> jar exécutable), vous avez la possibilité de regrouper toutes les dépendances dans le fichier jar généré. Il dispose également de deux autres méthodes (voir capture d'écran) pour exporter vos bibliothèques, soyez conscient des licences lorsque vous décidez de la méthode d'emballage que vous utiliserez.

Bibliothèques de packages

La liste déroulante «configuration de lancement» est remplie de classes contenant une main(String[])méthode. La classe sélectionnée est lancée lorsque vous «exécutez» le fichier jar.

L'exportation en tant que jar exécutable utilise les dépendances sur votre chemin de construction (souris droite 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 dans votre ou vos projets. Si vous avez les bibliothèques dans votre dossier de projet, vous pouvez les inclure mais des dépendances externes, par exemple, ne peut pas être inclus (pour les projets maven, recherchez ici ).

Joost
la source
2
@Joost: monsieur, je n'obtiens aucune option sous l'en-tête de configuration de lancement lorsque j'essaye d'exporter une application java en tant que jar exécutable. Qu'est-ce qui pourrait être faux ou manquant?
Rat-a-tat-a-tat Ratatouille
Eclipse répertorie les main()méthodes qu'il connaît. Essayez d'exécuter votre application une fois (clic droit sur le projet, Exécuter en tant que, application Java), puis exportez à nouveau.
Joost
Ce n'est pas pertinent pour cette question, car il indique clairement Eclipse. Veuillez poster une nouvelle question si vous ne trouvez pas de réponse (qui est sûrement déjà quelque part sur ce site)
Joost
1
Quelqu'un sait-il comment faire cela pour un pot non exécutable dans eclipse? Il n'y a pas d'options liées aux «bibliothèques requises».
jb1
@ jb1 Avez-vous déjà compris cela?
TheKingElessar
8

Vous pouvez utiliser Export-> Java-> Runnable Jar pour créer un fichier jar qui inclut ses dépendances

Alternativement, vous pouvez également utiliser le plugin fatjar eclipse pour regrouper les bocaux

Attila
la source
5

Vous pouvez faire un clic droit sur le projet, cliquer sur exporter, taper 'jar', choisir 'Exportation de fichier JAR exécutable'. Là, vous avez l'option «Extraire les bibliothèques requises dans le JAR généré».

maerch
la source
3

Personnellement,

Aucune des réponses ci-dessus n'a fonctionné pour moi, j'ai toujours eu des erreurs NoClassDefFound (j'utilise Maven pour les dépendances). Ma solution était de construire en utilisant "mvn clean install" et d'utiliser le "[projet] -jar-with-dependencies.jar" que cette commande crée. De même, dans Eclipse, vous pouvez faire un clic droit sur le projet -> Exécuter en tant que -> Maven Install et il placera les fichiers jar dans le dossier cible.

SMKS
la source
2

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 (comme indiqué dans "Bibliothèques référencées").

Peter Saitz
la source
0

Lors de l'exportation de votre source dans un jar, assurez-vous de sélectionner l'option jar exécutable dans les options. Sélectionnez ensuite si vous souhaitez empaqueter tous les fichiers JAR de dépendances ou simplement les inclure directement dans le fichier JAR. Cela dépend du projet sur lequel vous travaillez.

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

Charan Raj
la source
0

Pour générer un fichier jar en éclipse, faites un clic droit sur le projet pour lequel vous souhaitez générer, sélectionnez Exporter> Java> Fichier Jar exécutable,

entrez la description de l'image ici

entrez la description de l'image ici

Son jar de création qui inclut toutes les dépendances de Pom.xml, mais veuillez vous assurer du problème de licence si vous utilisez une dépendance tierce pour votre application.

Rohit
la source
0

S'il s'agit d'un projet Java autonome (méthode principale), aucun chemin spécifique ne place tous les jars à l'intérieur du projet, pas de chemin spécifique, puis cliquez avec le bouton droit sur le projet -> exportation -> jar exécutable -> sélectionnez la configuration du déjeuner et la gestion de la bibliothèque puis choisissez l'option de bouton radio "Package des 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.

JitenS
la source