Domanda

Sto usando la versione Maven-ear-plugin 2.3.1 - So che c'è una nuova versione disponibile: http://maven.apache.org/plugins/maven-ear-plugin/

Non riesco a capire come aggiornare alla versione più recente?

È stato utile?

Soluzione

Il valore di default del plugin versioni sono ereditate dal Super POM, e si può verificare con mvn help:effective-pom.

Se si desidera ignorare la versione fornita lì, aggiungere questo al tuo POM:

<project>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-ear-plugin</artifactId>
        <version>2.3.1</version>
      </plugin>
    </plugins>
  </build>
</project>

sostituire la versione con quello che vi serve.

Altri suggerimenti

Anche se questo ha già ottenuto la "risposta autorizzato", si scopre che c'è questa versioni IMPRESSIONANTE plug che gestisce l'infinita problema di versione di manutenzione.

Per quelle persone pigre qui ci sono alcuni dei suoi obiettivi:

  • versioni:. Display-dipendenza-updates Scansioni dipendenze di un progetto e produce un report di quelle dipendenze che dispongono di versioni più recenti disponibili
  • versioni:. Display-plugin-aggiornamenti Scansioni plugin di un progetto e produce un report di quei plugin che dispongono di versioni più recenti disponibili
  • versioni:. Display-proprietà-updates la scansione di un projectand produce un report di quelle proprietà che sono usati per controllare le versioni artefatto e che properies avere le versioni più recenti disponibili
  • versioni: update-parent aggiorna la sezione padre di un progetto in modo che faccia riferimento al più recente versione disponibile. Ad esempio, se si utilizza un POM radice aziendale, questo obiettivo può essere utile se è necessario assicurarsi che si sta utilizzando la versione più recente del POM radice aziendale.
  • versioni: update-proprietà aggiorna proprietà definite in un progetto in modo che corrispondano alla versione più recente disponibile delle dipendenze specifiche. Questo può essere utile se una serie di dipendenze devono tutti essere bloccata per una versione.
  • versioni: update-bambini-moduli aggiorna la sezione padre dei moduli figlio di un progetto così la versione corrisponde alla versione del progetto corrente. Ad esempio, se si dispone di un pom aggregatore che è anche il genitore per i progetti che si aggrega e bambini e genitori versioni non sono sincronizzati, questo mojo può aiutare a risolvere le versioni dei moduli bambino. (Nota: potrebbe essere necessario invocare Maven con l'opzione -N, al fine di eseguire questo obiettivo se il progetto è rotto così male che non può costruire a causa della versione di mis-match).
  • versioni: lock-istantanee cerca il pom per tutte le versioni -snapshot e li sostituisce con la versione timestamp corrente di quel -snapshot, per esempio -20090327.172306-4
  • versioni:. Sbloccare-istantanee cerca il pom per tutte le versioni istantanee timestamp bloccato e li sostituisce con -snapshot
  • versioni:. Set può essere utilizzato per impostare la versione del progetto dalla riga di comando
  • versioni:. D'uso stampa cerca il pom per tutte le versioni -snapshot che sono stati rilasciati e sostituisce loro con la versione corrispondente
  • versioni:. Uso-next-release cerca il pom per tutte le versioni non-snapshot che sono stati una nuova versione e li sostituisce con la versione successiva
  • versioni:. Use-latest-release cerca il pom per tutte le versioni non-snapshot che sono stati una nuova versione e li sostituisce con l'ultima versione
  • versioni:. Uso-next-istantanee cerca il pom per tutte le versioni non-snapshot che sono state una versione più recente -snapshot e li sostituisce con la prossima versione -snapshot
  • versioni:. Use-latest-istantanee cerca il pom per tutte le versioni non-snapshot che sono state una versione più recente -snapshot e li sostituisce con la versione più recente -snapshot
  • versioni:. Uso-next-versioni cerca il pom per tutte le versioni che sono stati una nuova versione e li sostituisce con la prossima versione
  • versioni: l'uso a tutte le esecuzioni cerca il pom per tutte le versioni che sono stati una nuova versione e li sostituisce con l'ultima versione.

Come si seleziona la versione di un plug-in, insieme con la discussione sulle versioni plugin nella superpom è coperto in dettaglio qui .

In realtà la risposta attualmente selezionato non è giusto. Dovrebbe essere

<project>
  <build>
   <pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-ear-plugin</artifactId>
        <version>2.3.1</version>
      </plugin>
    </plugins>
   </pluginManagement>
  </build>
</project>

qui :

"La sezione plugin regolare permette anche la configurazione di versione e di default da definire, e questo è dove la confusione si trova. E 'tecnicamente valida per definire la configurazione della versione plug-in e di default qui, ma trovo più facile Grok pom quando si segue questa linea guida:

Se il blocco plugin non è la definizione di un'esecuzione (e quindi vincolante Maven di fare qualcosa del ciclo di vita), mettere quel blocco in pluginManagment "

Alcuni plugin Maven sono limitati a Maven versioni. Ad esempio, in genere proietta queste parti usare Maven 2.0.4, che è limitato a usare il plugin guerra 2.0.2 - questo funziona con le sovrapposizioni. Il 2.1-alpha qualsiasi altra cosa, però, che Maven 2.0.9 utilizza, non - così abbiamo dovuto declassare manualmente. Maven, salvo diversa indicazione, tenterà di utilizzare l'ultima versione di un plugin che può in base alla sua versione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top