Hvad er Maven, og hvad gør Maven?


Udgivet:

Opdateret:


Artikler › Hvad er Maven, og hvad gør Maven?

Status i 2026 og sikker brug

Konklusion: Maven er et konventionsbaseret værktøj til build og projektstyring i Java. En POM beskriver projektkoordinater, afhængigheder, plugins og build-indstillinger, mens livscyklusfaserne giver teamet en reproducerbar proces til kompilering, test, pakning, verificering og udgivelse af artefakter.

Det lærer du

  • Hvad Maven administrerer, og hvad der fortsat hører hjemme i versionsstyring eller CI-konfiguration.
  • Hvordan POM-koordinater, repositories, plugins, faser og afhængighedsomfang relaterer sig.
  • Sådan læser du den originale oversigt uden at forveksle afhængighedsopløsning med hele buildet.

Målgruppe: Java-udviklere, der evaluerer Maven eller forsøger at forstå en nedarvet pom.xml.

Aktuel status i 2026: Brug Maven Wrapper, angiv plugin-versioner eksplicit, beskyt legitimationsoplysninger til repositories, og kontrollér den effektive POM i CI. Eksemplerne nedenfor forklarer grundprincipperne; kontrollér den aktuelle kompatibilitet mellem plugins og JDK i den officielle dokumentation.

Sikkerhedsbemærkning: Kommandoerne og konfigurationseksemplerne i den oprindelige artikel er ikke kørt igen i et aktuelt produktionsmiljø. Kontrollér understøttede versioner, tag backup, og forbered en rollback i et separat testmiljø før ændringerne anvendes.

Officielle kilder

Oversigt

Apache Maven styrer Java-projekters build og afhængigheder ved hjælp af en POM, standardiserede livscyklusser og plugins. Her får du et samlet overblik over, hvordan disse dele hænger sammen, før du går videre til de enkelte kommandoer.

Indholdsfortegnelse

  1. Hvad er Maven?
  2. Hvad du kan gøre med Maven
  3. Opsummering

1. Hvad er Maven?

Maven er et værktøj til build og projektstyring i Java. Hvis begrebet build er nyt, kan du begynde med følgende artikel.

Hvad omfatter et build i Java?

Et Java-build består typisk af flere sammenhængende opgaver:

  • opløsning af afhængigheder til JAR-biblioteker;
  • valg af outputmappe til de genererede filer;
  • kompilering, test og pakning som JAR eller WAR.

Maven beskriver og udfører disse opgaver på en ensartet måde.

Den officielle side sammenfatter projektets mål:

https://maven.apache.org/what-is-maven.html

Det centrale er et reproducerbart build og tydelige oplysninger om projektets tilstand.

Maven’s primary goal is to allow a developer to comprehend the complete state of a development effort in the shortest period of time. In order to attain this goal, Maven deals with several areas of concern:

  • Making the build process easy
  • Providing a uniform build system
  • Providing quality project information
  • Encouraging better development practices

Maven hjælper med andre ord teamet med at bygge projektet ens i alle miljøer.

2. Hvad kan Maven?

Maven samler almindelige buildopgaver og afhængighedsstyring i én model, som beskrives i en POM.

2-1. Kørsel af grundlæggende buildopgaver

Standardlivscyklussen indeholder faser til oprydning, test, pakning og publicering af artefakter.

  • test – kører testene;
  • clean – fjerner resultatet af det forrige build;
  • package – opretter en JAR- eller WAR-pakke.

2-2. Opløsning af transitive afhængigheder

Maven henter både det deklarerede bibliotek og de afhængigheder, der er angivet i bibliotekets POM. Derfor behøver man ikke finde og kopiere hver JAR-fil manuelt.

Mekanismen er beskrevet nærmere i følgende artikel.

Sådan opløser Maven transitive JAR-afhængigheder

2-3. Styring af JAR-biblioteker

I pom.xml angives koordinater, version og scope for hver afhængighed, for eksempel kun til test eller kompilering.

Når POM-filen versionsstyres, kan hele teamet reproducere det samme buildmiljø uden at dele JAR-filer manuelt.

3. Opsummering

Maven styrer projektets build, kører standardfaser, opløser transitive afhængigheder og samler konfigurationen i POM-filen.

Det opsummerer de vigtigste trin og begrænsninger.