2012-07-02 11 views
8

Im usando Maven 3.0.4 y Nexus 2.0.6. He configurado mi settings.xml como muestra la instrucción Nexus para usar un único repositorio. Aparece el siguiente error cuando maven intenta ejecutar maven -U clean.Nexus no está almacenando en caché los complementos centrales maven

[ERROR] Plugin org.apache.maven.plugins:maven-clean-plugin:2.4.1 or one of its d 
ependencies could not be resolved: Failed to read artifact descriptor for org.ap 
ache.maven.plugins:maven-clean-plugin:jar:2.4.1: Could not find artifact org.apa 
che.maven.plugins:maven-clean-plugin:pom:2.4.1 in nexus (http://localhost:8081/n 
exus/content/groups/public) -> [Help 1] 

Si elimino el espejo nexo de la configuración y voy directamente a maven central, el comando funciona. La configuración para el repositorio maven en nexus muestra que está en servicio y está en el grupo público (se enumera en último lugar).

No estoy detrás de un proxy para acceder a Internet.

Aquí es mi settings.xml

<?xml version="1.0" encoding="UTF-8"?> 
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> 
<offline>false</offline> 
<mirrors> 
    <mirror> 
     <!--This sends everything else to /public --> 
     <id>nexus</id> 
     <mirrorOf>*</mirrorOf> 
     <url>http://localhost:8081/nexus/content/groups/public</url> 
    </mirror> 
</mirrors> 
<profiles> 
    <profile> 
     <id>nexus</id> 
     <!--Enable snapshots for the built in central repo to direct --> 
     <!--all requests to nexus via the mirror --> 
     <repositories> 
      <repository> 
       <id>central</id> 
       <url>http://central</url> 
       <releases><enabled>true</enabled></releases> 
       <snapshots><enabled>true</enabled></snapshots> 
      </repository> 
     </repositories> 
     <pluginRepositories> 
      <pluginRepository> 
       <id>central</id> 
       <url>http://central</url> 
       <releases><enabled>true</enabled></releases> 
       <snapshots><enabled>true</enabled></snapshots> 
      </pluginRepository> 
     </pluginRepositories> 
    </profile> 
    <profile> 
     <id>maven-central</id> 
     <!--Enable snapshots for the built in central repo to direct --> 
     <!--all requests to nexus via the mirror --> 
     <repositories> 
      <repository> 
       <id>central</id> 
       <url>http://repo1.maven.org/maven2/</url> 
       <releases><enabled>true</enabled></releases> 
       <snapshots><enabled>true</enabled></snapshots> 
      </repository> 
     </repositories> 
     <pluginRepositories> 
      <pluginRepository> 
       <id>central</id> 
       <url>http://repo1.maven.org/maven2/</url> 
       <releases><enabled>true</enabled></releases> 
       <snapshots><enabled>true</enabled></snapshots> 
      </pluginRepository> 
     </pluginRepositories> 
    </profile> 
</profiles> 
    <activeProfiles> 
    <!--make the profile active all the time --> 
    <activeProfile>nexus</activeProfile> 
</activeProfiles> 


</settings> 
+0

Puede verificar si el artefacto fue descargado por nexus accediendo a él a través de la web - http: // localhost: 8081/nexus/content/groups/public/org/apache/maven/plugins/maven-clean-plugin/2.4.1/ – Raghuram

+0

¿Ha comprobado el acceso a Nexus a través del navegador y ha marcado si puede acceder al artefacto a través del navegador también? – khmarbaise

+0

He agregado más detalles para mi situación similar aquí: http://stackoverflow.com/questions/13927806/nexus-wont-download-artifacts-from-central/13928041#13928041 –

Respuesta

3

Intente descargar de manera directa a través de un navegador web:

http://localhost:8081/nexus/content/groups/public/org/apache/maven/plugins/maven-clean-plugin/2.4.1/maven-clean-plugin-2.4.1.pom 

Si esto no funciona, compruebe el Sonatype trabajo/Nexus/logs/Nexus archivo .log para obtener más información sobre el error.

5

Asegúrese de que el repositorio de proxy Central esté configurado correctamente, y la URL de proxy sea http://repo1.maven.org/maven2/. Compruebe que puede ver los artefactos almacenados en caché en la URL del repositorio, debe ser http://localhost:8081/nexus/content/repositories/central/org/apache/maven/plugins/maven-clean-plugin/2.4.0/maven-clean-plugin-2.4.1.pom.

Asegúrese de tener un proxy Central en absoluto, ¿hay algo en el listado en http://localhost:8081/nexus/content/repositories/central/.

Si estás detrás de un proxy, puede configurar el proxy bajo las defecto Configuración proxy HTTP (opcional) sección en el panel Administración-> Nexus.

Luego, asegúrese de que el repositorio de grupos Public Repositories esté configurado para incluir el repositorio Central en su lista de repositorios incluidos.

Si todo va bien hasta ahora, revise los registros, tal vez haya un mensaje útil allí.

+0

exactamente, también estoy agregando un enlace a la documentación oficial de Nexus https://books.sonatype.com/nexus-book/3.0/reference/maven.html#maven-sect-single-group, más mis propias instrucciones para configurar Maven con Nexus http://www.javamonamour.org/2017/09/nexus-and-maven-setup.html – PierluigiVernetto

Cuestiones relacionadas