Maison > Java > javaDidacticiel > Comment résoudre les erreurs « SunCertPathBuilderException » lors de l'utilisation de Maven derrière un proxy ?

Comment résoudre les erreurs « SunCertPathBuilderException » lors de l'utilisation de Maven derrière un proxy ?

Susan Sarandon
Libérer: 2024-11-14 17:45:01
original
215 Les gens l'ont consulté

How to Resolve

Problèmes de certificat SSL et de proxy Maven

Lorsque vous utilisez Maven derrière un proxy, vous pouvez rencontrer des problèmes avec les certificats SSL. L'erreur que vous avez décrite, « SunCertPathBuilderException : impossible de trouver le chemin de certification valide vers la cible demandée », indique généralement que Maven ne peut pas vérifier l'authenticité du référentiel Maven basé sur HTTPS, https://repo.maven.apache.org/maven2.

Même si les paramètres du proxy sont correctement configurés via le fichier settings.xml, un problème avec le proxy peut toujours empêcher Maven de se connecter en toute sécurité au Maven central. référentiel.

Voici une solution étape par étape qui peut résoudre ce problème :

  1. Obtenir le certificat SSL :

    • Visitez le référentiel Maven basé sur HTTPS (https://repo.maven.apache.org/maven2) dans un site Web navigateur.
    • Recherchez l'icône de verrouillage dans la barre d'adresse du navigateur et cliquez dessus.
    • Choisissez « Afficher le certificat ».
    • Accédez à l'onglet « Détails » et sélectionnez « Enregistrer dans un fichier."
    • Enregistrez le certificat au format Base 64 X.509 (.CER) dans un emplacement désigné emplacement.
  2. Importez le certificat SSL :

    • Ouvrez une invite de commande ou un terminal et exécutez la commande suivante, en remplaçant '' par l'emplacement où vous avez enregistré le certificat :
    keytool -import -file <path-to-cert> -keystore <path-to-keystore>
    Copier après la connexion
    • Remplacez '' avec l'emplacement souhaité du magasin de clés (par exemple, C:tempmavenKeystore).
  3. Configurez Maven pour utiliser le magasin de clés :

    • Exécutez la commande Maven suivante avec le paramètre -Djavax.net.ssl.trustStore pour spécifier l'emplacement du keystore :
    mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false -Djavax.net.ssl.trustStore=<path-to-keystore>
    Copier après la connexion
    • Remplacer avec le chemin complet du magasin de clés (par exemple, C:tempmavenKeystore pour Windows). Pour Linux/macOS, utilisez des chemins absolus (par exemple, /tmp/mavenKeystore).
  4. Facultatif : solution permanente (MAVEN_OPTS)

    • Vous pouvez éviter d'avoir à spécifier l'emplacement du magasin de clés, vous pouvez définir l'environnement MAVEN_OPTS variable :
    export MAVEN_OPTS=-Djavax.net.ssl.trustStore=<path-to-keystore>
    Copier après la connexion
    • Pour Windows, remplacez export par set.

En suivant ces étapes, vous pouvez importer le SSL certificat et configurez Maven pour utiliser le magasin de clés, vous permettant d'établir une connexion sécurisée au référentiel Maven et d'éviter l'erreur liée au certificat SSL.

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