Skip to content
frecturesPublic

About

No description, website, or topics provided.

Resources

Stars

6 stars

Watchers

1 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Maven löst 2 Probleme:

  1. Dependency Management: benötigte Bibliotheken/Frameworks (und Maven-Plugins) werden automatisch heruntergeladen
  2. Reproduzierbarer Build: unabhängig von der verwendeten/favorisierten Entwicklungsumgebung

Ein Maven-Projekt wird in der Datei pom.xml (Project Object Model) konfiguriert.

Empfohlene Ordner-Struktur sowie Dateifluss zwischen den Ordnern innerhalb 6 wichtiger Phasen:

Mavens Standard-Lebenszyklus teilt sich in 23 Phasen auf, von denen 8 mit Plugins vorbelegt sind:

Phase Plugin:Goal Bedeutung
process-resources resources:resources kopiert Produktiv-Ressourcen (z.B. Bilder oder Textdateien)
compile compiler:compile kompiliert produktiven Quelltext Example.java zu JVM-Bytecode Example.class
process-test-resources resources:testResources kopiert Test-Ressourcen
test-compile compiler:testCompile kompiliert Test-Quelltext ExampleTest.java zu JVM-Bytecode ExampleTest.class
test surefire:test führt die Tests aus
package jar:jar / war:war komprimiert Produktiv-Klassen in ein .jar oder .war
install install:install kopiert das .jar in das lokale Maven-Repository
deploy deploy:deploy kopiert das .jar in ein entferntes Maven-Repository

Der Scope einer Dependency regelt ihre Verfügbarkeit zu 3 verschiedenen Zeitpunkten:

<scope> compile test runtime Beispiele
compile ✓ ✓ ✓ Apache Commons, Guava
test ✓ JUnit, Mockito, AssertJ
provided ✓ ✓ Servlet API, Java EE API
runtime ✓ ✓ JDBC Treiber

Wenn man keinen expliziten Scope angibt, wird implizit compile verwendet.

About

No description, website, or topics provided.

Resources

Stars

6 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors