Saltar al contenido

Problemas al usar Maven y SSL detrás del proxy

Solución:

La respuesta anterior es una buena solución de trabajo, pero aquí se explica cómo hacerlo si desea utilizar el repositorio SSL:

  • Use un navegador (usé IE) para ir a https://repo.maven.apache.org/
    • Haga clic en el icono de candado y elija “Ver certificado”
    • Vaya a la pestaña “Detalles” y elija “Guardar en archivo”
    • Elija el tipo “Base 64 X.509 (.CER)” y guárdelo en algún lugar
  • Ahora abra un símbolo del sistema y escriba (use sus propias rutas):

    keytool -import -file C:tempmavenCert.cer -keystore C:tempmavenKeystore

  • Ahora puede ejecutar el comando nuevamente con el parámetro

    -Djavax.net.ssl.trustStore=C:tempmavenKeystore

  • Bajo linux use la ruta absoluta

    -Djavax.net.ssl.trustStore=/tmp/mavenKeystore

    de lo contrario esto sucederá

  • Como esto:

    mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false -Djavax.net.ssl.trustStore=C:tempmavenKeystore

Opcional:

Puedes usar el MAVEN_OPTS variable de entorno para que no tenga que preocuparse por ello de nuevo. Ver más información sobre el MAVEN_OPTS variable aquí:

El hecho es que su complemento maven intenta conectarse a un repositorio remoto https
(por ejemplo, https://repo.maven.apache.org/maven2/)

¡Esta es una nueva conectividad SSL para Maven Central que se puso a disposición en agosto de 2014!

Entonces, por favor, ¿puede verificar que su settings.xml tiene la configuración correcta?

    <settings>
  <activeProfiles>
    <!--make the profile active all the time -->
    <activeProfile>securecentral</activeProfile>
  </activeProfiles>
  <profiles>
    <profile>
      <id>securecentral</id>
      <!--Override the repository (and pluginRepository) "central" from the
         Maven Super POM -->
      <repositories>
        <repository>
          <id>central</id>
          <url>http://repo1.maven.org/maven2</url>
          <releases>
            <enabled>true</enabled>
          </releases>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>central</id>
          <url>http://repo1.maven.org/maven2</url>
          <releases>
            <enabled>true</enabled>
          </releases>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>
</settings>

Alternativamente, puede usar el repositorio http maven simple como este

 <pluginRepositories>
    <pluginRepository>
      <id>central</id>
      <name>Maven Plugin Repository</name>
      <url>http://repo1.maven.org/maven2</url>
      <layout>default</layout>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
      <releases>
        <updatePolicy>never</updatePolicy>
      </releases>
    </pluginRepository>
  </pluginRepositories>

Por favor, avíseme si mi solución funciona;)

J.

Puedes usar el -Dmaven.wagon.http.ssl.insecure=true opción

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *