Risposte:
I clean
, install
e le deploy
fasi sono valide le fasi del ciclo di vita e invocando li attiveranno tutte le fasi di loro precedenti, e gli obiettivi legati a queste fasi.
mvn clean install
Questo comando richiama la clean
fase e quindi la install
fase in sequenza:
clean
: rimuove i file generati in fase di creazione nella directory di un progetto ( target
per impostazione predefinita)install
: installa il pacchetto nel repository locale , per utilizzarlo come dipendenza in altri progetti localmente .mvn deploy
Questo comando richiama la deploy
fase:
deploy
: copia il pacchetto finale nel repository remoto per la condivisione con altri sviluppatori e progetti .mvn release
Questa non è una fase valida né un obiettivo, quindi non farà nulla. Ma se si riferisce al plug-in di rilascio Maven utilizzato per automatizzare la gestione delle versioni. Il rilascio di un progetto avviene in due passaggi: prepare
e perform
. Come documentato:
La preparazione di un rilascio passa attraverso le seguenti fasi di rilascio:
- Controlla che non ci siano cambiamenti non impegnati nelle fonti
- Verificare che non vi siano dipendenze SNAPSHOT
- Cambia la versione nei POM da x-SNAPSHOT a una nuova versione (ti verrà chiesto di utilizzare le versioni)
- Trasforma le informazioni SCM nel POM per includere la destinazione finale del tag
- Esegui i test di progetto con i POM modificati per confermare che tutto è in ordine
- Commettere i POM modificati
- Contrassegnare il codice in SCM con un nome di versione (questo verrà richiesto)
- Eseguire il bump della versione nei POM su un nuovo valore y-SNAPSHOT (verranno richiesti anche questi valori)
- Commettere i POM modificati
E poi:
L'esecuzione di una versione esegue le seguenti fasi di rilascio:
- Acquista da un URL SCM con tag opzionale
- Esegui gli obiettivi Maven predefiniti per rilasciare il progetto (per impostazione predefinita, distribuire site-deploy)
mvn install
inserirà il progetto Maven in pacchetto nel repository locale , per l'applicazione locale che utilizza il progetto come dipendenza.mvn release
fondamentalmente inserirà il tuo codice attuale in un tag sul tuo SCM, cambierà la tua versione nei tuoi progetti.mvn deploy
inserirà il progetto Maven in pacchetto in un repository remoto per la condivisione con altri sviluppatori.Risorse: