Recibo los siguientes errores al conectarme a Maven Central / https://repo1.maven.org después del 18 de junio de 2018.
Received fatal alert: protocol_version
o
Received fatal alert: peer not authenticated
Recibo los siguientes errores al conectarme a Maven Central / https://repo1.maven.org después del 18 de junio de 2018.
Received fatal alert: protocol_version
o
Received fatal alert: peer not authenticated
Respuestas:
Solución 1: configurar Java 7
Es necesario habilitar el protocolo TLS 1.2 con la propiedad Java en la línea de comando
mvn -Dhttps.protocols=TLSv1.2 install
install
es solo un ejemplo de un objetivo
El mismo error ant
puede resolverse de esta manera
java -Dhttps.protocols=TLSv1.2 -cp %ANT_HOME%/lib/ant-launcher.jar org.apache.tools.ant.launch.Launcher
Solución 2: use Java 7 con Oracle Advanced Support
También se puede resolver el problema actualizando la versión de Java 7. Pero la última versión disponible ( 7u80
) no soluciona el problema. Es necesario utilizar una actualización proporcionada con Oracle Advanced Support (anteriormente conocido como Java for Business).
Solución 3: use Java 8 en su lugar
Configure $JAVA_HOME
para apuntar a Java 8.
sbt -Dhttps.protocols=TLSv1.2 instal
pero no funciona
-Dhttps.protocols=TLSv1.2
. Por lo tanto, debe encontrar cómo pasar los parámetros de Java en SBT.
En junio de 2018, en un esfuerzo por aumentar la seguridad y cumplir con los estándares modernos, los inseguros protocolos TLS 1.0 y 1.1 ya no serán compatibles con las conexiones SSL a Central. Esto solo debería afectar a los usuarios de Java 6 (y Java 7) que también usan https para acceder a central, que según nuestras métricas es inferior al .2% de los usuarios.
Para obtener más detalles y soluciones, consulte el blog y las preguntas frecuentes aquí: https://blog.sonatype.com/enhancing-ssl-security-and-http/2-support-for-central
El siguiente comando me ayudó (ejecutar en bash antes de ejecutar mvn)
export MAVEN_OPTS=-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
Como dijo @ v.ladynev, funciona con JDK 1.7
Con Eclipse, para poder realizar un "Ejecutar como" maven install
con el parámetro de línea de comandos TLS, simplemente configure el JDK que está utilizando.
Abra el cuadro de diálogo a través de Ventana > Preferencias > Java > JRE instalados .
Luego resalte el que está usando (debe ser un JDK , no un JRE ), haga clic en Editar . En el campo "Argumentos de VM predeterminados", complete el valor -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
. Como se muestra abajo:
Limpie el proyecto (tal vez opcional), luego vuelva a ejecutar a maven install
.
Lo siento, no sé por qué recibes el mensaje de error. Sin embargo, estoy usando Java 7 y Windows 10 y la solución para mí fue usar temporalmente Java 8 cambiando la JAVA_HOME
variable de entorno. Entonces podría correr mvn install
y buscar desde el repositorio central de Maven.
Tenga en cuenta que si está utilizando IBM JDK, es posible que también deba configurar
com.ibm.jsse2.overrideDefaultTLS=true
Usando jdk7-u221, tuve que instalar la Extensión de Criptografía Java (JCE)
Para configurar las propiedades de Java en el servidor de aplicaciones de Windows:
luego agregue opciones de Java:
reiniciar servicio.