Con frecuencia necesitan para ejecutar «mvn» comando :

mvn -f pom.xml clean install -Dmaven.test.skip=false --settings /Users/myhome/settings.xml -X -Djavax.net.ssl.trustStore=/Users/myhome/truststore.jks -Djavax.net.ssl.trustStoreType=JKS -Djavax.net.ssl.trustStorePassword=dummy -Djava.protocol.handler.pkgs=com.sun.net.ssl.internal.www.protocol -U

Como yo la necesidad de integrar con otros dominios, por lo que actualmente cada vez que tengo que añadir su certificado en mi almacén de confianza.jks para prevenir el protocolo de enlace SSL errores.

¿Hay alguna manera de que pueda configurar mvn ignorar SSL errores.

InformationsquelleAutor Novice User | 2014-01-21

4 Comentarios

  1. 194

    Puede deshabilitar la comprobación de certificados SSL mediante la adición de uno o más de estos parámetros de línea de comandos:

    • -Dmaven.wagon.http.ssl.insecure=true – permitir el uso de relajado SSL de verificación para el usuario los certificados generados.
    • -Dmaven.wagon.http.ssl.allowall=true – habilitar la coincidencia de que el servidor X. 509 certificado con un nombre de host. Si se deshabilita, un navegador como el cheque no podrá ser utilizado.
    • -Dmaven.wagon.http.ssl.ignore.validity.dates=true – ignorar los problemas con el certificado de fechas.

    La documentación oficial: http://maven.apache.org/wagon/wagon-providers/wagon-http/

    Aquí está el oneliner para un fácil copiar-y-pegar:

    -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true

    Ajay Gautam sugirió que también se podría añadir la de arriba a la ~/.mavenrc archivo como para no tener que especificar cada vez que en la línea de comandos:

    $ cat ~/.mavenrc 
    MAVEN_OPTS="-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true"
    • Tengo la primavera de inicio /proyecto de maven y estoy usando maven-jaxb2-plugin para generar fuentes de un webservice. pero el certificado caducado. Así que he intentado correr el maven generar fuentes con el anterior agruments en Eclipse. Pero me sigue apareciendo el error «timestamp» error de comprobación de cualquier idea de cómo resolverlo en un eclipse / maven medio ambiente.
    • La respuesta no me funciona. Estoy usando maven 3.5.0 y las excepciones que recibí fue PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target. ¿Vagón trabajar con MAven 3.5.0?
    • En lugar de ello, he creado un almacén de confianza jks y señaló maven para este archivo jks.
    • Esto no es trabajar en maven 3.5.0
    • Mediante la Instalación de Java Cryptography Extension (JCE) Ilimitado de la Fuerza (para JDK7 | de JDK8) se corrigió el problema para mí en maven 3.5.0
    • Usando netbeans 6.8 he añadido las opciones para el netbeans maven opciones en ‘Mundial de las Opciones de Ejecución» a través de la interfaz de usuario y yo era capaz de descargar de los repositorios mediante https.
    • Con Maven 3.3.9 que esto no funciona. Tuve que usar Richard respuesta a continuación, añadir la inseguridad espejo de mi settings.xml.
    • Esto funcionó para mí en maven 3.5.4!! gran

  2. 38

    Una alternativa que trabajó para mí es decirle a Maven para el uso de http en lugar de https: cuando se utiliza Maven Central mediante la adición de la siguiente settings.xml:

    <settings>
       .
       .
       .
      <mirrors>
        <mirror>
            <id>central-no-ssl</id>
            <name>Central without ssl</name>
            <url>http://repo.maven.apache.org/maven2</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
      </mirrors>
       .
       .
       .
    </settings>

    Su kilometraje puede variar de curso.

    • Gracias, que funcionó! Y por favor una nota para volver una vez SSL funciona porque esto podría llevar a los usuarios añadir repositorios no estándar que pueda ser la sede de quién sabe qué
  3. 1

    Crear una carpeta ${USER_HOME}/.mvn
    y poner un archivo llamado maven.config en ella.

    El contenido debe ser:

    -Dmaven.wagon.http.ssl.insecure=true
    -Dmaven.wagon.http.ssl.allowall=true
    -Dmaven.wagon.http.ssl.ignore.validity.dates=true

    Espero que esto ayude.

    • Sólo probamos. Esto no tiene ningún efecto con Maven 3.5.0 🙁
    • No funciona con la nueva maven

Dejar respuesta

Please enter your comment!
Please enter your name here