Kapitel 3 - Maven Flashcards
1
Q
Was ist Maven?
A
Build-Werkzeug für Java-Anwendungen.
2
Q
Wofür eignet sich Maven?
A
- Konfigurationsmanagement in Entwicklungsprojekten
- Management des Build-Zyklus
- Auflösung von Abhängigkeiten im Build-Zyklus
- Erstellen von Doku und Reports
- Verwalten von Deployment-Konfigurationen
3
Q
Was sind Artefakte? (Maven)
A
- Einheit von Ressourcen-Paketen und Kompilaten, die referenziert werden können (vgl. Libs)
4
Q
Was sind Goals (Maven)?
A
Definitionen von Einstiegspunkten im vordefinierten Build-Zyklus.
5
Q
Was ist die pom.xml (Maven)?
A
- Konfigurationsdatei
- wird Maven ausgeführt, wird zuerst geprüft, ob pom.xml alle nötigen Angaben enthällt
- Anhand der oben genannten Attribute können alle Abhängigkeiten aufgelöst werden
6
Q
Wie sieht die typische Verzeichnisstruktur eines Maven Projekts aus?
A
- /src/main/java –> Java Quelltexte
- /src/main/resources –> Ressource-Dateien (Properties, Bilder)
- /src/main/webapp –> Ressourcen für Webanwendungen (CSS, JavaScript)
- /src/test/java –> Quelltexte für Unit-Tests
- /src/test/ressurces –> Ressourcen für Unit-Tests
- /src/site –> Projektwebseite
- /target –> Kompilate
7
Q
Was sind Repositorys (Maven)?
A
- Speicher für Artefakte
- können zur Abhängigkeitsauflösung verwendet werden
8
Q
Welche Doals kennen Sie (Maven)?
A
- compile
- test
- package
9
Q
Welche Infos stehen noch in der pom.xml (Maven)?
A
- Plug-In Infos
- Versionskontrolle
- Bugtracking
- Continous Integration Server
10
Q
Welche Scopes kennt Maven?
A
- compile –> Artefakt wird zur Kompilierzeit und Laufzeit benötigt
- runtime –> Artefakt wird nur zur Laufzeit benötigt
- provided –> Artefakt steht Applicationsserver zur Verfügung
11
Q
Welche Phasen kennt Maven?
A
- compile –> Quelltext kompilieren
- test –> Unit Tests ausführen
- install –> Artefakt ins lokale Repository ausbringen
- deploy –> Artefakt in remote Repository ausbringen
12
Q
Was sind Archetypen?
A
- Basissetups für Maven Projekte (dadurch kann Projektstruktur schnell aufgesetzt werden)
13
Q
Welche Attribute stehen in der pom.xml (Maven)?
A
- groupID –> eindeutiger Bezeichner einer Entwicklungsgruppe, Unternehmen oder Projekt
- artifactID –> eindeutiger Bezeichner für Artefakte, dass im Maven Projekt gebaut wird
- version –> Versionsattribut, dass den Fortschritt der Implementierung kennzeichnet