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 ?.
89
Réponses:
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.
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 exempleMaven, ne peut pas être inclus (pour les projets maven, recherchez ici ).
la source
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.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
la source
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é».
la source
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.
la source
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").
la source
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.
la source
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,
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.
la source
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.
la source