2010-01-22 22 views
7

Esiste un meccanismo per tracciare automaticamente gli aggiornamenti delle versioni dei plug-in maven. Poiché la maggior parte delle volte in dependencyManagement si collegano i numeri di versione per ogni plug-in. Esiste un comando amministrativo per trovare queste informazioni su quali versioni più recenti sono disponibili per i plugin dichiarati in pom.xml?plug-in maven aggiornamenti più recenti

risposta

11

Il Versions Maven Plugin ha un bel mojo versions:display-plugin-updates per questo. Per utilizzarlo, è sufficiente eseguire:

mvn versions:display-plugin-updates 

che produce qualcosa di simile:

 
[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] ------------------------------------------------------------------------ 

Essa vi avvertirà anche se non è stata specificata la versione del plugin che si sta utilizzando. Vedi Checking for new plugin updates per i dettagli.

Aggiornamento: (rispondendo ad alcune domande supplementari postato come commento)

Come ci si decide di capire la lista di plugin per cercare

(è da pluginManagement?) AFAIK, il plug-in dovrebbe eseguire la scansione di tutti i plug-in, ad esempio build.plugins, build.pluginManagement.pluginsebuild.reporting.plugins (vedere MVERSIONS-83 in merito).

Ho fatto un rapido controllo sulla build/pluginManagement/plugins e sembra che non ha trovato gli aggiornamenti per i plugin diversi org.apache.maven.plugins

Ho fatto un test troppo e questo non è quello che sto osservando. Almeno funziona con i mojos di codehaus (come nell'ultimo campione da previous link). Ma se sposto il plugin in build.plugins, non funziona davvero. Questo è in realtà un bug, vedere MVERSIONS-69. Sorprendentemente, sembra funzionare con la versione 1.1 che è possibile eseguire come illustrato di seguito:

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

E se si guarda da vicino MVERSIONS-69, l'output dei test di integrazione suggerisce che dovrebbe funzionare con qualsiasi plugin. Ma lo confesso, non ne sono sicuro al 100%.

+0

Funziona, grazie mille. Come decide di capire l'elenco dei plug-in da cercare (è da pluginManagement?) – Sam

+0

@ Samuel Sei il benvenuto. Per quanto ne so, analizza tutti i plugin definiti in 'pluginManagement/plugins' e' plugins'. A proposito: il modo comune di riconoscere una buona risposta è di svenderlo ;-). –

+0

Ho fatto un controllo rapido su build/pluginManagement/plugins e sembra che non abbia trovato aggiornamenti per plugin diversi da org.apache.maven.plugins. Non sono sicuro, se c'è un errore dalla mia parte. – Sam