Maison > Java > javaDidacticiel > le corps du texte

Comment puis-je résoudre l'erreur \'NoClassDefFoundError\' dans Maven lors de l'exécution à partir de la ligne de commande ?

Susan Sarandon
Libérer: 2024-10-27 04:01:02
original
838 Les gens l'ont consulté

How can I resolve the

Résolution des dépendances via le plugin Shade pour NoClassDefFoundError

Dans une première expérience avec Maven, des incohérences entre Eclipse et l'utilisation de la ligne de commande peuvent survenir en raison de gestion des dépendances. Malgré la création réussie du projet Maven et l'ajout de dépendances dans Eclipse, l'exécution du projet via la ligne de commande peut entraîner une erreur NoClassDefFoundError.

Par défaut, Maven emballe les dépendances séparément et ne les inclut pas dans le fichier JAR compilé. Cette omission entraîne l'échec de la machine virtuelle Java lors de la tentative de localisation des classes de bibliothèque pendant l'exécution.

Au lieu d'ajouter manuellement des bibliothèques au chemin de classe, le maven-shade-plugin fournit une solution plus efficace. Il crée un "uber-JAR" qui combine les classes d'application avec le code de bibliothèque requis.

Pour implémenter cela, ajoutez la configuration de plugin suivante à votre POM :

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>3.5.2</version>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
        </execution>
    </executions>
</plugin>
Copier après la connexion

Après avoir ajouté cette configuration, réexécutez les commandes suivantes :

$ mvn package
$ java -cp target/bil138_4-0.0.1-SNAPSHOT.jar tr.edu.hacettepe.cs.b21127113.bil138_4.App
Copier après la connexion

Pour les options de configuration avancées, telles que la spécification des JAR inclus ou d'un fichier JAR exécutable, reportez-vous à la section « Exemples » sur le site Web maven-shade-plugin.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!