Maven - základy Flashcards

1
Q

Kolik “lifecycles” má maven v základu a jaké to jsou?

A

V základ má 3. Default, clean a site.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Jaký je význam cyklu default?

A

Je to hlavní build lifecycle. Slouží k sestavení výsledného produktu a jeho nasazení.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Jaký je význam cyklu clean?

A

Jeho úkolem je vyčistit všechny pomocné soubory vygenerované buildem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Jaký je význam cyklu site?

A

Sestavuje dokumentaci projektu. Moc se dnes nepoužívá.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Jaká je struktura maven buildu? (3 hlavní komponenty)

A
  • Lifecycles
  • Phases
  • Goals
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Vyjmenuj 7 nejdůležitějších fází (phases) z default lifecycle

A
  • validate
  • compile
  • test-compile
  • test
  • package
  • install
  • deploy
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Jak se říká krokům z nichž se skládají fáze (phases)?

A

Goals

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Jaká je struktura názvu cílů (goals)?

A

plugin:goal
Například compiler:compile
(Název nic neříká o tom, v jaké fázi se daný cíl spouští)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Co je maven plugin?

A

Java knihovna poskytující nějaké cíle (goals)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Jak zjistím seznam cílů (goals) poskytovaných nějakým pluginem?

A

mvn pluginName:help

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Co provede příkaz mvn deploy a jaký je rozdíl oproti příkazu mvn install

A

mvn deploy spustí cíl deploy v lifecycle default, to znamena, že spustí daný lifecycle od začátku až po cíl deploy (tedy celý).
mvn install také spustí lifecycle default od začátku, ale zastaví se cílem install, deploy se již neprovede

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Co provede příkaz mvn clean install?

A

Nejprve spustí cíl clean z lifecycle clean. Potom spustí cíl install z lifecycle default. Spuštění cíle znamená, že spustí všechny cíle z daného lifecycle až po zmíněný cíl.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Co provede příkaz mvn pluginName:goal?

A

Spustí příslušný cíl aniž by vyvolal celý lifecycle, ke kterému je cíl přiřazen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Jaké jsou dva hlavní typy dependencies?

A

direct
Přímo zmíněné v pom našeho projektu
transitive
Vyžadované jinými závislostmi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Vyjmenuj šest výchozích dependency scopes

A
  • compile
  • provided
  • runtime
  • test
  • system
  • import
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Popiš princip compile scope

A

Jsou k dispozici na všech classpath projektu.
Zároveň jsou transitivní.

17
Q

Popiš princip provided scope

A

Jedná se o knihovny, které by měla poskytnout platforma na níž produkt poběží.
Jsou k dipozici na compile a test classpath projektu.
Nejsou transitivní.

18
Q

Popiš princip runtime scope

A

Tyto závislosti nejsou třeba pro kompilaci, ale vyžadují se pro běh.
Jsou k dispozici pouze na runtime a test classpath.

19
Q

Popiš princip test scope

A

Tato závislost je dostupná pouze na test classpath.

20
Q

Popiš princip import scope

A

Je platný pouze pro dependency type pom.
Všechny závislosti definované v POM se stanou závislostmi projektu.