2008-09-24 24 views

Respuesta

9

Buscaría dependencias que no tengan un número de versión especificado. Maven comprobará periódicamente para asegurarse de que tiene la versión más actualizada de estos artefactos.

+0

También pueden ser actualizaciones de complementos, por lo que las versiones específicas también podrían ser útiles. –

+0

Sí ... supongo que los incluí genéricamente en "dependencias". También debe tener en cuenta que las fases del ciclo de vida a menudo están vinculadas a complementos específicos. ¿Quién realmente especifica un número de versión para su plugin de compilación? –

+1

Dependencias _deben_ tener una versión especificada. Los complementos no, pero deberías. Aquí está el por qué: http://www.sonatype.com/people/2008/04/maven-209-released/ –

3

Esto probablemente no es lo que está viendo, pero en el pasado tuve que instalar artefactos manualmente en mi repositorio local y si olvida incluir la opción -Dgenerate.pom = true no habrá pom en el repositorio de ese artefacto y Maven se dirigirán a central (y a cualquier otro repos remoto que haya configurado) para intentar descargar ese pom en cada compilación.

2

Mientras estamos en el tema de esto, me he encontrado con un error importante en Maven 2.0.x. En el modo fuera de línea, maven intentará descargar la instantánea más reciente, y cuando no puede encontrar el repositorio de instantáneas, falla la compilación. Imagine la hilaridad que surge cuando esto sucede en el sitio con un cliente y solo necesita hacer un pequeño cambio (pero estoy divagando).

Aquí está el error: http://jira.codehaus.org/browse/MNG-2433 aquí es una solución: http://mail-archives.apache.org/mod_mbox/maven-users/200601.mbox/%[email protected]%3E

+0

Esto se arregló en 2.0.10: http://jlorenzen.blogspot.com/2009/04/better- offline-capabilities-with-maven.html –

+0

en realidad en mi experiencia Maven 2.0.x estaba tan lleno de errores que en aquel momento pensé que no valía la pena usarlo en absoluto. No recuerdo exactamente si era 2.1.x o 2.2.x pero definitivamente era ** versión 2.0 ** la primera que me hizo aceptar y luego me enamoré de Maven – gnat

0

La bandera -o todavía no estaba trabajando para mí, pero esto lo hicieron:

find ~/.m2/repository -name '_maven*' | xargs rm 
find ~/.m2/repository -name '*lastUpdated' | xargs rm 

lo que eliminará todos los archivos. archivos lastUpdated y _maven.repositories en su repositorio local. Me encontré con este problema porque tenemos un repositorio corporativo de Nexus que era inalcanzable, y necesitaba hacer algo de trabajo. El uso de la integración Maven de Eclipse también puede haber contribuido a esto.

Cuestiones relacionadas