2012-02-24 13 views
6

Supponendo che tu stia già utilizzando il plug-in m2eclipse, se fai clic con il tasto destro su un progetto Maven c'è un sottomenu Maven.Qual è la differenza tra "Istantanee aggiornamento" e "Dipendenze aggiornamento" in m2eclipse?

Due delle azioni disponibili in questo sottomenu sono:

  • aggiornare le dipendenze
  • Aggiornamento istantanee

Ho trovato un answer che dice che "Aggiorna istantanee" è equivalente all'utilizzo il parametro -U per mvn.

Se "aggiornamento istantanee" è uguale a mvn -U, cosa fa "aggiornamento dipendenze"?

risposta

1

Dipende in gran parte da come il criterio di aggiornamento delle istantanee è impostato nel proprio ambiente. Per impostazione predefinita Maven dovrebbe aggiornare gli snapshot una volta al giorno (da qui l'azione flag -U e "Aggiorna istantanee" per forzare l'aggiornamento dell'istantanea), ma questo criterio può essere sovrascritto localmente o al livello del gestore del repository.

"Dipendenze di aggiornamento" equivale all'incirca all'azione "Istantanee di aggiornamento", tranne che per forzare l'aggiornamento delle risorse di snapshot. Entrambe le azioni ripristinano il modello di progetto in memoria creato da M2E per tenere traccia delle dipendenze, comprese quelle provenienti da Eclipse Workspace.

+0

Ancora non vedo la differenza. Quali aggiornamenti sono forzati con "Dipendenze di aggiornamento" che "Aggiorna istantanee" non funziona? – Serxipc

+1

Le "Dipendenze di aggiornamento" non sostituiscono le politiche di default, quindi non vi è alcuna forza. –

+0

Quindi, ciò che fa "Dipendenze di aggiornamento" è di cancellare il modello di progetto di eclisse M2E e ricaricarlo. Quindi, in base al criterio degli snapshot di aggiornamento, potrebbe o meno aggiornare le istantanee dai repository. Ha senso. – Serxipc

2

Le istantanee sono dipendenze, ma utilizzate in modo leggermente diverso. La dipendenza specifica viene determinata utilizzando il gruppo, il nome e la versione. Questi attributi possono essere identici per due diverse istantanee. Maven utilizza l'ultima istantanea basata sul timestamp interno.

Gli shapshot sono utili durante lo sviluppo del progetto in cui non si desidera modificare la versione ma si desidera che gli utenti utilizzino l'ultima build.

Quindi ... "le dipendenze degli aggiornamenti" scarica le dipendenze che non si hanno, lasciando quelle che si sono intatte, "aggiorna istantanee" aggiorna le istantanee in posto all'ultimo build.

Spero che questo aiuti.

+0

Questo non accade durante l'installazione di Eclipse. Quando clicco su "Aggiornamento dipendenze" posso vedere che m2eclipse sta scaricando tutte le dipendenze di SNAPSHOT sulla vista Console Maven, come se fosse un clic su "Aggiorna istantanee" – Serxipc

+0

Sì ... ma le istantanee e le dipendenze sono cose diverse e di solito vengono da diversi repository –