Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

324
Views
Las dependencias de Maven están fallando con un error 501

Recientemente, los trabajos de compilación de Maven que se ejecutan en Jenkins están fallando con la siguiente excepción que dice que no pudieron extraer dependencias de Maven Central y deberían usar HTTPS . No estoy seguro de cómo cambiar las solicitudes de HTTP a HTTPS . ¿Alguien podría orientarme en este asunto?

[ERROR] Extensión de compilación irresoluble:
No se pudo resolver el complemento org.apache.maven.wagon:wagon-ssh:2.1 o una de sus dependencias:
No se pudieron recopilar las dependencias para org.apache.maven.wagon:wagon-ssh:jar:2.1 () :
No se pudo leer el descriptor del artefacto para org.apache.maven.wagon:wagon-ssh:jar:2.1 :
No se pudo transferir el artefacto org.apache.maven.wagon:wagon-ssh:pom:2.1 de/a central ( http://repo.maven.apache.org/maven2 ):
Error al transferir el archivo: http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh/2.1/wagon-ssh-2.1.pom .
El código de retorno es: 501, ReasonPhrase:HTTPS Required. -> [Help 2]

Esperando a que Jenkins termine de recopilar data[ERROR]
No se pudo resolver el complemento org.apache.maven.plugins:maven-clean-plugin:2.4.1 o una de sus dependencias:
No se pudo leer el descriptor del artefacto para org.apache.maven.plugins:maven-clean-plugin:jar:2.4.1 :
No se pudo transferir el artefacto org.apache.maven.plugins:maven-clean-plugin:pom:2.4.1 de/a central ( http://repo.maven.apache.org/maven2 ):
Error al transferir el archivo: http://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/2.4.1/maven-clean-plugin-2.4.1.pom .
El código de retorno es: 501 , ReasonPhrase:HTTPS Required. -> [Help 1]

over 4 years ago · Santiago Trujillo
28 answers
Answer question

0

El siguiente enlace me sacó del apuro,

https://support.sonatype.com/hc/en-us/articles/360041287334-Central-501-HTTPS-Required

Puede realizar los cambios en su maven, apache-maven/conf/settings.xml. O, si está especificando en su pom.xml, realice el cambio allí.

Antes,

 <repository> <id>maven_central_repo</id> <url>http://repo.maven.apache.org/maven2</url> </repository>

Ahora,

 <repository> <id>maven_central_repo</id> <url>https://repo.maven.apache.org/maven2</url> </repository>

Tenga en cuenta el cambio de http a https

over 4 years ago · Santiago Trujillo Report

0

A mi tambien me paso este error. Hice lo que dijo Muhammad umer arriba. Pero, solo resolvió el error para las dependencias de arranque de primavera y las dependencias de arranque de primavera tienen dependencias secundarias. Ahora, hubo 21 errores. Anteriormente, eran 2 errores. Me gusta esto:

 Non-resolvable import POM: Could not transfer artifact org.springframework.cloud:spring-cloud-dependencies:pom:Hoxton.SR3 from/to central

y también se requiere https en el mensaje de error.

Actualicé la versión maven de 3.2.2 a 3.6.3 y la versión java de 8 a 11. Ahora, todos los errores de https requeridos desaparecieron.

Para actualizar la versión de maven

  1. Descargue el último maven desde aquí: descargue maven
  2. Descomprima y muévalo a /opt/maven/
  3. Establecer la ruta de export PATH=$PATH:/opt/maven/bin
  4. Y, también elimine al viejo experto de PATH
over 4 years ago · Santiago Trujillo Report

0

Encontré este problema con la última versión (agosto de 2020) (después de no usar Maven en esta máquina durante mucho tiempo) y me preguntaba por qué todavía podría ser un problema después de leer estas respuestas.

Resulta que tenía un antiguo archivo settings.xml en la carpeta .m2/ de mi directorio de inicio con algunas personalizaciones de hace años.

Sin embargo, incluso eliminar ese archivo no me solucionó el problema. Terminé eliminando toda la carpeta .m2 .
No creo que haya nada más en él, excepto los recursos descargados. Tal vez simplemente borrar carpetas como repository/org/apache/maven/archetype hubiera sido suficiente.

over 4 years ago · Santiago Trujillo Report

0

Descargué la última versión 12.2 de netbeans y el problema se resolvió.

over 4 years ago · Santiago Trujillo Report

0

En un entorno antiguo de griales, lo único que funciona sin actualizar es:

configuración.xml

 <settings> <mirrors> <mirror> <id>centralhttps</id> <mirrorOf>central</mirrorOf> <name>Maven central https</name> <url>http://insecure.repo1.maven.org/maven2/</url> </mirror> </mirrors> </settings>
over 4 years ago · Santiago Trujillo Report

0

Originalmente de https://stackoverflow.com/a/59796324/32453 aunque esto podría ser útil:

Tenga en cuenta que su pom principal también puede (re)definir repositorios, y si ha anulado el http central y especificado por cualquier motivo, deberá corregirlo (así que lugares para corregir: ~/.m2/settings.xml Y también pompones de los padres).

Si no puede arreglarlo en el pom principal, puede anular el repositorio del pom principal, así, en su pom secundario (extraído del super pom predeterminado 3.6.3, parece que también cambiaron el nombre de repo1):

 <repositories> <repository> <id>central</id> <name>Central Repository</name> <url>https://repo.maven.apache.org/maven2</url> <!-- the https you've been looking for --> <layout>default</layout> <snapshots> <enabled>false</enabled> <!-- or set to true if desired, default is false --> </snapshots> </repository> </repositories>
over 4 years ago · Santiago Trujillo Report

0

Si está utilizando la versión anterior de Netbeans, debe realizar cambios en maven para usar https sobre http

Abra C:\Program Files\NetBeans8.0.2\java\maven\conf\settings.xml y pegue el siguiente código entre la etiqueta de espejos

 <mirror> <id>maven-mirror</id> <name>Maven Mirror</name> <url>https://repo.maven.apache.org/maven2</url> <mirrorOf>central</mirrorOf> </mirror>

Obligará a maven a usar https://repo.maven.apache.org/maven2 url.

over 4 years ago · Santiago Trujillo Report

0

Descargué el último eclipse y comencé a usarlo desde aquí https://www.eclipse.org/downloads/packages/release/ que resolvió mi problema.

over 4 years ago · Santiago Trujillo Report

0

Agregue esto en el archivo pom.xml. Funciona bien para mí

 <pluginRepositories> <pluginRepository> <id>central</id> <name>Central Repository</name> <url>https://repo.maven.apache.org/maven2</url> <layout>default</layout> <snapshots> <enabled>false</enabled> </snapshots> <releases> <updatePolicy>never</updatePolicy> </releases> </pluginRepository> </pluginRepositories> <repositories> <repository> <id>central</id> <name>Central Repository</name> <url>https://repo.maven.apache.org/maven2</url> <layout>default</layout> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories>
over 4 years ago · Santiago Trujillo Report

0

Intente presionar la siguiente URL en cualquier navegador. Volverá 501

http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh/2.1/wagon-ssh-2.1.pom

Intente con https. Descargará un archivo pom.xml:

https://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh/2.1/wagon-ssh-2.1.pom

Agréguelo ( https://repo.maven.apache.org/maven2 ) en el archivo setting.xml:

 <repositories> <repository> <id>Central Maven repository</id> <name>Central Maven repository https</name> <url>https://repo.maven.apache.org/maven2</url> </repository> </repositories>
over 4 years ago · Santiago Trujillo Report

0

A partir del 15 de enero de 2020, el Repositorio central ya no admite la comunicación no segura a través de HTTP simple y requiere que todas las solicitudes al repositorio se cifren a través de HTTPS .

Si recibe este error, debe reemplazar todas las referencias de URL a Maven Central con sus homólogos HTTPS canónicos.

( fuente )

Hemos realizado los siguientes cambios en build.gradle de mi proyecto:

Viejo:

 repositories { maven { url "http://repo.maven.apache.org/maven2" } }

Nuevo:

 repositories { maven { url "https://repo.maven.apache.org/maven2" } }
over 4 years ago · Santiago Trujillo Report

0

El motivo del error observado se explica en Central 501 HTTPS requerido

A partir del 15 de enero de 2020, el Repositorio central ya no admite la comunicación insegura a través de HTTP simple y requiere que todas las solicitudes al repositorio se cifren a través de HTTPS.

Parece que las últimas versiones de Maven (probado con 3.6.0, 3.6.1) ya están usando la URL HTTPS de forma predeterminada.

Estas son las fechas en las que cambiarán los repositorios principales:

Sus compilaciones de Java pueden fallar a partir del 13 de enero (si aún no ha cambiado el acceso al repositorio a HTTPS)

Actualización: parece que desde maven 3.2.3 se accede a maven central a través de HTTPS Ver https://stackoverflow.com/a/25411658/5820670

Registro de cambios de Maven ( http://maven.apache.org/docs/3.2.3/release-notes.html )

over 4 years ago · Santiago Trujillo Report

0

Para todos los codificadores corporativos, idealmente, si recibe este error, significa que su base de código aún se está construyendo a partir de una comunidad de código abierto. Debe anular el repositorio "central" con el administrador de repositorio Maven de su empresa interna.

Puede ir a su configuración.xml y anular la URL de su repositorio central de http:// a https://

 <M2_HOME>/conf/settings.xml

Busque las secciones de espejos y agregue la siguiente entrada:

 <mirror> <id>other-mirror</id> <name>Other Mirror Repository</name> <url>https://other-mirror.repo.other-company.com/maven2</url> <mirrorOf>central</mirrorOf> </mirror>

En la sección URL, si estaba usando http://repo1.maven.org/maven2/ o http://repo.maven.apache.org/maven2/ entonces

Reemplace http://repo1.maven.org/maven2/ con https://repo1.maven.org/maven2/

Reemplace http://repo.maven.apache.org/maven2/ con https://repo.maven.apache.org/maven2/

Idealmente, debe usar la URL de administración/repositorio de control de fuente de su empresa aquí. Como esto bloqueará cualquier contacto con la comunidad de repositorio Maven de código abierto.

Como se mencionó en otras respuestas, a partir del 15 de enero de 2020, el repositorio central de Maven no admite la comunicación insegura a través de HTTP simple.

over 4 years ago · Santiago Trujillo Report

0

Actualice el repositorio central de Maven y use https en lugar de http .

 <repositories> <repository> <id>central</id> <name>Central Repository</name> <url>https://repo.maven.apache.org/maven2</url> <layout>default</layout> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories>
over 4 years ago · Santiago Trujillo Report

0

Estaba usando una versión obsoleta de Maven (3.0.3 y 3.1). Estas versiones anteriores ya no admiten repositorios http (como se mencionó anteriormente). Actualizar a Maven 3.6 fue la solución para mí.

over 4 years ago · Santiago Trujillo Report

0

Agregue el siguiente repositorio en pom.xml .

 <project> ... <repositories> <repository> <id>central</id> <name>Maven Plugin Repository</name> <url>https://repo1.maven.org/maven2</url> <layout>default</layout> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> ... </project>
over 4 years ago · Santiago Trujillo Report

0

Estaba usando una instalación limpia de Maven/Java en un contenedor Docker.

Para mí, tuve que cd $M2_HOME/conf y editar el archivo settings.xml allí. Agrega el siguiente bloque dentro de <mirrors>...</mirrors>

 <mirror> <id>central-secure</id> <url>https://repo.maven.apache.org/maven2</url> <mirrorOf>central</mirrorOf> </mirror>
over 4 years ago · Santiago Trujillo Report

0

Tengo el mismo problema, pero uso GitLab en lugar de Jenkins. Los pasos que tuve que hacer para superar el problema:

  1. Mi proyecto está en GitLab, por lo que usa el archivo .yml que apunta a una imagen de Docker. Tengo que hacer una integración continua, y la imagen que usa tiene las URL http://maven . Así que lo cambié a https://maven .
  2. Esa misma imagen de Dockerfile tenía una versión anterior de Maven 3.0.1 que me dio problemas de la noche a la mañana. Actualicé el Dockerfile para obtener la última versión 3.6.3
  3. Luego implementé esa imagen en mi repositorio en línea y actualicé mi archivo yml del proyecto Maven para usar esa nueva imagen.
  4. Y, por último, actualicé el archivo POM de mi proyecto principal para hacer referencia a https://maven ... en lugar de http://maven

Me doy cuenta de que es más específico para mi configuración. Pero sin realizar todos los pasos anteriores, continuaría recibiendo este mensaje de error. Return code is: 501 , ReasonPhrase:HTTPS Required

over 4 years ago · Santiago Trujillo Report

0

Maven se muda a HTTPS y deshabilita el acceso HTTP

En pocas palabras, desde el 15 de enero de 2020, el repositorio de Maven Central ya no admite conexiones HTTP (otros repositorios están haciendo lo mismo). Por lo tanto, indicará su configuración de Maven/Gradle para usar una URL HTTPS.

Solución:

Puede elegir uno de los siguientes tres enfoques.

  1. Agrega un repositorio en el archivo pom.xml de tu proyecto

     <project> ... <repositories> <repository> <id>central maven repo</id> <name>central maven repo https</name> <url>https://repo.maven.apache.org/maven2</url> </repository> </repositories> </project>
  2. Agregue el repositorio a un perfil en el archivo settings.xml .

     <profile> <id>my profile</id> <repositories> <repository> <id>central maven repo</id> <name>central maven repo https</name> <url>https://repo.maven.apache.org/maven2</url> </repository> </repositories> </profile>
  3. Actualice su versión de maven a una nueva que use valores https como predeterminados. El último en este momento 3.6.3 Descargar aquí

Para Gradle:

Solo reemplace la URL para la versión HTTPS.

 repositories { maven { url "https://repo.maven.apache.org/maven2" } }
over 4 years ago · Santiago Trujillo Report

0

Estoy enfrentando el mismo problema. Hay dos soluciones que probé, y ambas funcionan bien para mí.

  • Actualizar el repositorio de versiones de Maven (versión de Maven >= 3.2.3)
  • Restrinja la versión actual de Maven para usar enlaces HTTPS.

Actualice el repositorio de versiones de Maven:

Descargue el binario de Apache Maven que incluye las direcciones https predeterminadas ( binario de Apache Maven 3.6.3 ). Y abra la ventana de diálogo Opciones en las herramientas de la barra de menú de NetBeans ( Vista de diálogo de Java Maven ). Y seleccione la opción de exploración en el cuadro de lista de inicio de Maven (Vista de cuadro de lista de inicio de Maven ). Después de agregar la versión recién descargada de Apache Maven ( Vista de cuadro de lista de inicio de Maven actualizada ), el proyecto se compila y ejecuta correctamente.

Restrinja la versión actual de Maven para usar enlaces HTTPS:

Incluya el siguiente código en pom.xml de su proyecto.

 <project> ... <pluginRepositories> <pluginRepository> <id>central</id> <name>Central Repository</name> <url>https://repo.maven.apache.org/maven2</url> <layout>default</layout> <snapshots> <enabled>false</enabled> </snapshots> <releases> <updatePolicy>never</updatePolicy> </releases> </pluginRepository> </pluginRepositories> <repositories> <repository> <id>central</id> <name>Central Repository</name> <url>https://repo.maven.apache.org/maven2</url> <layout>default</layout> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> </project>
over 4 years ago · Santiago Trujillo Report

0

Como se indicó en otras respuestas, ahora se requiere https para realizar solicitudes a Maven Central, mientras que las versiones anteriores de Maven usan http .

Si no desea/no puede actualizar a Maven 3.2.3+, puede solucionarlo agregando el siguiente código en su MAVEN_HOME\conf\settings.xml en la sección <profiles> :

 <profile> <id>maven-https</id> <activation> <activeByDefault>true</activeByDefault> </activation> <repositories> <repository> <id>central</id> <url>https://repo1.maven.org/maven2</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>https://repo1.maven.org/maven2</url> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> </pluginRepositories> </profile>

Esta será siempre una configuración activa a menos que la deshabilite/anule en su POM cuando sea necesario.

over 4 years ago · Santiago Trujillo Report

0

Para mí (codificador corporativo), también se solucionó el problema al agregar un repositorio espejo en la settings.xml . También estoy usando Maven dentro de un contenedor docker.

 <mirrors> <mirror> <id>https-mirror</id> <name>Https Mirror Repository</name> <url>https://repo1.maven.org/maven2</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors>
over 4 years ago · Santiago Trujillo Report

0

Usando Ubuntu 16.04, java 1.8.0_201.

Desinstalé el viejo maven e instalé Maven 3.6.3, todavía recibí este error de que las dependencias de Maven están fallando con un error 501.

Me di cuenta de que podría ser un problema de almacén de confianza/almacén de claves asociado con el requisito de https. Descubrí que ahora puede configurar las opciones -Djavax usando un archivo jvm.config, consulte: https://maven.apache.org/configure.html .

Como también estoy usando Tomcat, copié la configuración del almacén de claves y el almacén de confianza de Tomcat (setenv.sh) a mi jvm.config y luego ¡funcionó!

También hay una opción para pasar esta configuración en 'exportar MAVEN_OPTS' (al usar mvn generar) pero aunque esto detuvo el error 501, creó otro: esperaba un archivo pom.

La creación de un archivo jvm.config separado funciona perfectamente, simplemente colóquelo en la raíz de su proyecto.

Espero que esto ayude a alguien, ¡me tomó todo el día resolverlo!

over 4 years ago · Santiago Trujillo Report

0

El mismo problema también está ocurriendo para jcenter .

Desde el 13 de enero de 2020 en adelante, Jcenter solo está disponible en HTTPS.

Los proyectos que obtengan sus dependencias usando lo mismo comenzarán a enfrentar problemas. Para soluciones rápidas, haga lo siguiente en su build.gradle

en lugar de

 repositories { jcenter () //others }

utilizar esta:

 repositories { jcenter { url "http://jcenter.bintray.com/"} //others }
over 4 years ago · Santiago Trujillo Report

0

Me agregaron el siguiente segmento de código a setting.xml y se resolvió el problema,

 <mirrors> <mirror> <id>maven-mirror</id> <name>Maven Mirror</name> <url>https://repo.maven.apache.org/maven2</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors>
over 4 years ago · Santiago Trujillo Report

0

Comparto esto por si alguien lo necesita:

Configuración antigua de Gradle (sin Gitlab, implementaciones de Docker, para proyectos simples)

 repositories { google() jcenter() maven { url "http://dl.bintray.com/davideas/maven" } maven { url 'https://plugins.gradle.org/m2/' } maven { url 'http://repo1.maven.org/maven2' } maven { url 'http://jcenter.bintray.com' } }

Nueva configuración:

 repositories { google() jcenter() maven { url "https://dl.bintray.com/davideas/maven" } maven { url 'https://plugins.gradle.org/m2/' } maven { url 'https://repo1.maven.org/maven2' } maven { url 'https://jcenter.bintray.com' } }

Observe el https. Feliz codificación :)

over 4 years ago · Santiago Trujillo Report

0

El error:

Error al transferir el archivo: http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-ssh/2.1/wagon-ssh-2.1.pom .

El código de retorno es: 501 , ReasonPhrase:HTTPS Obligatorio.

Análisis de raíz de la causa:

Maven central espera que los clientes usen https, pero el cliente solo realiza una solicitud HTTP simple.

Por lo tanto, la solicitud para descargar el paquete llamado 'wagon-ssh-2.1.pom' falló.

¿Como solucionar el problema?

Reemplace la URL " http://repo.maven.apache.org/maven2 "

con " https://repo.maven.apache.org/maven2 "

en el archivo pom.xml o en el archivo build.gradle del proyecto.

over 4 years ago · Santiago Trujillo Report

0

Mi entorno actual no admite HTTPS, por lo que agregar la versión insegura del repositorio resolvió mi problema: http://insecure.repo1.maven.org según Sonatype

 <repositories> <repository> <id>Central Maven repository</id> <name>Central Maven repository insecure</name> <url>http://insecure.repo1.maven.org</url> </repository> </repositories>
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!