2010-01-22 14 views
7

¿Hay algún mecanismo para rastrear automáticamente las actualizaciones de la versión del complemento maven? Como la mayor parte del tiempo en la gestión de dependencias, se cablean los números de versión para cada complemento. ¿Existe un comando administrativo para encontrar esta información sobre qué versiones más nuevas están disponibles para los complementos declarados en pom.xml?maven plugin actualizaciones más recientes

Respuesta

11

El Versions Maven Plugin tiene un buen mojo versions:display-plugin-updates para esto. Para usarlo, simplemente ejecute:

mvn versions:display-plugin-updates 

que produce algo así:

 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building sandbox 
[INFO] task-segment: [versions:display-plugin-updates] 
[INFO] ------------------------------------------------------------------------ 
[INFO] [versions:display-plugin-updates {execution: default-cli}] 
[INFO] 
[INFO] The following plugin updates are available: 
[INFO] maven-clean-plugin ....................................... 2.2 -> 2.4 
[INFO] maven-compiler-plugin .................................. 2.0.2 -> 2.1 
[INFO] maven-deploy-plugin ...................................... 2.4 -> 2.5 
[INFO] maven-install-plugin ..................................... 2.2 -> 2.3 
[INFO] maven-jar-plugin ......................................... 2.2 -> 2.3 
[INFO] maven-resources-plugin ................................. 2.3 -> 2.4.1 
[INFO] maven-site-plugin ................................. 2.0-beta-7 -> 2.1 
[INFO] maven-surefire-plugin .................................. 2.4.3 -> 2.5 
[INFO] 
[INFO] All plugins have a version specified. 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESSFUL 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 7 seconds 
[INFO] Finished at: Fri Jan 22 07:21:57 CET 2010 
[INFO] Final Memory: 16M/68M 
[INFO] ------------------------------------------------------------------------ 

También le advertirá si no se ha especificado las versiones de plugins que está utilizando. Vea Checking for new plugin updates para más detalles.

Actualización: (respondiendo a algunas preguntas adicionales publicados como comentarios)

¿Cómo deciden averiguar la lista de plugins para buscar

(es que a partir pluginManagement?) AFAIK, el complemento debería escanear todos los complementos, es decir, build.plugins, build.pluginManagement.pluginsybuild.reporting.plugins (consulte MVERSIONS-83 sobre esto).

Hice una rápida búsqueda en construcción/pluginManagement/plugins y parece que no se encontró actualizaciones para los plugins que no sean org.apache.maven.plugins

Hice una prueba demasiado y esta no es lo que estoy observando Al menos funciona con mojos de codehaus (como en la última muestra del previous link). Pero si muevo el complemento en build.plugins, no funciona de verdad. Esto es realmente un error, vea MVERSIONS-69. Sorprendentemente, parece que funciona con la versión 1.1 que se puede ejecutar como se muestra a continuación:

mvn org.codehaus.mojo:versions-maven-plugin:1.1:display-plugin-updates 

Y si te fijas bien en MVERSIONS-69, la salida de las pruebas de integración sugiere que debería funcionar con cualquier plugin. Pero confieso, no estoy 100% seguro.

+0

Funciona, muchas gracias. ¿Cómo decide averiguar la lista de complementos para buscar (es de pluginManagement?) – Sam

+0

@Samuel De nada. Que yo sepa, escanea todos los complementos definidos en 'pluginManagement/plugins' y' plugins'. Por cierto: la forma común de reconocer una buena respuesta es votando hacia arriba ;-). –

+0

Hice una comprobación rápida en build/pluginManagement/plugins y parece que no encontré actualizaciones para complementos que no sean org.apache.maven.plugins. No estoy seguro, si hay un error de mi parte. – Sam