Maison > Java > javaDidacticiel > Comment exécuter un fichier JAR avec des dépendances externes ?

Comment exécuter un fichier JAR avec des dépendances externes ?

Mary-Kate Olsen
Libérer: 2024-12-05 18:41:10
original
1034 Les gens l'ont consulté

How to Execute a JAR File with External Dependencies?

Exécution d'un fichier JAR avec un chemin de classe externe

Problème

Compilation d'un fichier JAR avec une classe principale spécifiée et des bibliothèques dépendantes (stockées dans le "lib"), les tentatives d'exécution du fichier JAR avec le chemin de classe personnalisé échouent. Les erreurs rencontrées incluent « Impossible de trouver ou de charger la classe principale » ou « NoClassDefFoundError ».

Solution

La commande Java -jar ignore le paramètre -cp lors de la spécification d'un fichier JAR. Cela signifie que toute tentative de spécification d'un chemin de classe personnalisé à l'aide de -cp sera inefficace.

Pour exécuter le fichier JAR avec le chemin de classe externe, deux options sont disponibles :

  1. Inclure tous les fichiers Jar dans le manifeste :

    • Dans le fichier MANIFEST.MF dans le JAR, spécifiez le chemin de classe en incluant les fichiers JAR du répertoire "lib" à l'aide de chemins relatifs.
  2. Spécifiez le chemin de classe sur la ligne de commande :

    • Sur la ligne de commande, spécifiez l'option -cp avec une liste séparée par deux points de tous les fichiers JAR nécessaires, y compris votre fichier JAR et le répertoire "lib" :

      java -cp MyJar.jar:lib/* com.somepackage.subpackage.Main
      Copier après la connexion

Remarque : Il n'est pas possible d'inclure des fichiers JAR supplémentaires dans le JAR lui-même, car vous devrez extraire et placer les fichiers .class directement dans votre JAR.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal