Maven ciele a fázy
1. Prehľad
V tomto tutoriáli preskúmame rôzne životné cykly zostavovania Maven a ich fázy.
Diskutujeme tiež o základnom vzťahu medzi cieľmi a fázami.
2. Maven Build Lifecycle
Zostava Maven sleduje konkrétny životný cyklus nasadenia a distribúcie cieľového projektu.
Existujú tri zabudované životné cykly:
- predvolené: hlavný životný cyklus, pretože je zodpovedný za nasadenie projektu
- clean: na vyčistenie projektu a odstránenie všetkých súborov vygenerovaných predchádzajúcou zostavou
- miesto: na vytvorenie dokumentácie miesta projektu
Každý životný cyklus pozostáva z postupnosti fáz. The predvolené životný cyklus zostavenia pozostáva z 23 fáz, pretože je to hlavný životný cyklus zostavovania.
Na druhej strane, čistý životný cyklus pozostáva z 3 fáz, zatiaľ čo stránky životný cyklus sa skladá zo 4 fáz.
3. Fáza Maven
Fáza Maven predstavuje fázu v zostave Maven životný cyklus. Každá fáza je zodpovedná za konkrétnu úlohu.
Tu sú niektoré z najdôležitejších fáz v dokumente predvolené zostaviť životný cyklus:
- potvrdiť: skontrolujte, či sú k dispozícii všetky informácie potrebné na zostavenie
- zostaviť: skompilovať zdrojový kód
- test-kompilácia: skompilovať zdrojový kód testu
- test: spustiť jednotkové testy
- balenie: balík kompilovaného zdrojového kódu do distribuovateľného formátu (jar, war, ...)
- integračný test: v prípade potreby spracuje a nasadí balík na spustenie integračných testov
- Inštalácia: nainštalujte balík do miestneho úložiska
- nasadiť: skopírujte balík do vzdialeného úložiska
Celý zoznam fáz každého životného cyklu nájdete v dokumente Maven Reference.
Fázy sa vykonávajú v konkrétnom poradí. To znamená, že ak spustíme konkrétnu fázu pomocou príkazu:
mvn
Toto nespustí iba zadanú fázu, ale aj všetky predchádzajúce fázy.
Napríklad, ak spustíme nasadiť fáza - ktorá je poslednou fázou v predvolené zostaviť životný cyklus - ktorý vykoná všetky fázy pred nasadiť fáza, ktorá je celá predvolené životný cyklus:
MVN nasadiť
4. Cieľ Maven
Každá fáza predstavuje postupnosť cieľov a každý cieľ zodpovedá za konkrétnu úlohu.
Keď spustíme fázu - všetky ciele spojené s touto fázou sa vykonajú v poradí.
Tu sú uvedené niektoré fázy a predvolené ciele, ktoré sa na ne viažu:
- kompilátor: zostaviť - the zostaviť cieľ z zostavovateľ plugin je viazaný na zostaviť fáza
- prekladač: testCompile je viazaný na test-zostaviť fáza
- surefire: test je viazaný na test fáza
- inštalovať: nainštalovať je viazaný na Inštalácia fáza
- jar: jar a vojna: vojna je viazaný na balíček fáza
Môžeme vypísať všetky ciele viazané na konkrétnu fázu a ich doplnky pomocou príkazu:
Pomocník mvn: description -Dcmd = PHASENAME
Napríklad uviesť zoznam všetkých cieľov viazaných na zostaviť fázy môžeme bežať:
mvn help: description -Dcmd = kompilovať
A získajte ukážkový výstup:
compile 'je fáza zodpovedajúca tomuto pluginu: org.apache.maven.plugins: maven-compiler-plugin: 3.1: compile
Čo, ako je uvedené vyššie, znamená zostaviť gól z zostavovateľ plugin je viazaný na zostaviť fáza.
5. Doplnok Maven
Plugin Maven je skupina cieľov. Tieto ciele však nemusia byť nevyhnutne spojené s rovnakou fázou.
Napríklad tu je jednoduchá konfigurácia pluginu Maven Failsafe, ktorý je zodpovedný za vykonávanie integračných testov:
maven-failafe-plugin $ {maven.failsafe.version} test integrácie overený
Ako vidíme, doplnok Failsafe má tu nakonfigurované dva hlavné ciele:
- integračný test: spustiť integračné testy
- overiť: overiť všetky splnené integračné testy
Nasledujúci príkaz môžeme použiť na zoznam všetkých cieľov v konkrétnom pluginu:
mvn: pomoc
Napríklad zoznam všetkých cieľov v doplnku Failsafe:
MVN FailSafe: pomoc
Výsledkom bude:
Tento doplnok má 3 ciele: FailSafe: help Zobraziť informácie o pomoci na maven-FailSafe-Plugin. Volajte mvn FailSafe: help -Ddetail = true -Dgoal = pre zobrazenie podrobností o parametroch. Failsafe: Integration-Test Spustenie integračných testov pomocou programu Surefire. Failsafe: Verifikácia Overte, či integračné testy prebehli pomocou programu Surefire.
Spustiť konkrétny cieľ bez vykonania celej jeho fázy (a predchádzajúcich fáz) môžeme použiť príkaz:
mvn:
Napríklad behať integračný test cieľ z Failsafe pluginu, musíme spustiť:
mvn FailSafe: integračný test
6. Stavba projektu Maven
Na zostavenie projektu Maven musíme vykonať jeden zo životných cyklov spustením jednej z ich fáz:
MVN nasadiť
Týmto sa vykoná celý predvolené životný cyklus. Prípadne sa môžeme zastaviť na Inštalácia fáza:
inštalácia mvn
Ale zvyčajne použijeme príkaz:
mvn čistá inštalácia
Najprv vyčistite projekt - spustením čistý životný cyklus - pred novým zostavením.
Môžeme tiež spustiť iba konkrétny cieľ doplnku:
kompilátor mvn: kompilovať
Upozorňujeme, že ak sme sa pokúsili vytvoriť projekt Maven bez zadania fázy alebo cieľa, spôsobí to chybu:
[ERROR] Pre toto zostavenie neboli zadané žiadne ciele. Musíte určiť platnú fázu životného cyklu alebo cieľ
7. Záver
V tomto článku sme diskutovali o životných cykloch zostavovania Maven, ako aj o vzťahu medzi fázami a cieľmi Maven.