Maison > Java > javaDidacticiel > le corps du texte

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
136 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 référentiel central Maven.

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

  1. Obtenez le certificat SSL :

    • Visitez le référentiel Maven basé sur HTTPS (https:/ /repo.maven.apache.org/maven2) dans un navigateur Web.
    • 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é.
  2. Importez le certificat SSL :

    • Ouvrez une invite de commande ou un terminal et exécutez la commande suivante, en remplaçant '
    keytool -import -file <path-to-cert> -keystore <path-to-keystore><ul><li>Remplacez '<path-to-keystore>' avec l'emplacement souhaité du magasin de clés (par exemple, C:tempmavenKeystore).</li></ul>
    </li>
    <li>
    <p><strong>Configurez Maven pour utiliser le magasin de clés :</strong></p>
    <ul><li>Exécutez la commande Maven suivante avec le paramètre -Djavax.net.ssl.trustStore pour spécifier l'emplacement du magasin de clés :</li></ul>
    <pre class="brush:php;toolbar:false">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
    • Remplacez 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).
  3. Facultatif : solution permanente (MAVEN_OPTS)

    • Vous pouvez éviter d'avoir à spécifier l'emplacement du magasin de clés, vous pouvez définir la variable d'environnement MAVEN_OPTS :
    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 certificat SSL et configurer Maven pour utiliser le keystore, 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