Wat is Maven en wat doet Maven?


Datum van publicatie:16 januari 2021.



INFOMARTION > Wat is Maven en wat doet Maven?

Overzicht.

Apache Maven is algemeen bekend als Maven.(In het vervolg wordt Apache Maven geparafraseerd als Maven.)Wat is Apache Maven? Beschrijving van de beschikbare functies. Maven is veelzijdig en nuttig, maar het is zo multifunctioneel dat het uiteindelijk moeilijk is om te begrijpen waar het allemaal om draait. Probeer dit als een referentie voor een goed begrip van Maven.

Inhoudsopgave

  1. Wat is Maven?
  2. Wat je kunt doen met Maven
  3. samenvatting

1. Wat is Maven?

Maven is een build management tool. Als u niet bekend bent met de bouw, raadpleeg dan ook het volgende artikel.

Wat betekent het om Java te bouwen?

De constructie is gebaseerd op een aantal aannames, waaronder

  • Oplossen van jar bibliotheek afhankelijkheden.
  • De uitvoermap voor bouwresultaten specificeren
  • War-bestanden maken (afbreuk doen aan de betekenis of waarde van het vorige woord), zoals

Maven beheert deze bouw-gerelateerde taken.

De Maven website beschrijft het doel van Maven. (What is Maven?)

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

Het volgende, opgesomd onder "Maven's Doelstellingen", zijn de meest belangrijke details om Maven te begrijpen.

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

Kortom, Maven maakt het gemakkelijk om een build omgeving te bouwen die correct werkt.

2. Wat je kunt doen met Maven

Om het gemakkelijker te maken om een goed werkende bouwomgeving te bouwen, willen we graag enkele mogelijkheden van Maven introduceren.

2-1. Voer de taken uit die nodig zijn voor een basisbouw

Natuurlijk, Maven is een build management tool, dus het kan de volgende reeks taken uitvoeren die nodig zijn voor een build.

  • test(Voer een test uit)
  • clean(Maak klassebestanden opnieuw aan.)
  • build(Bouw oorlog bestanden.)

2-2. Afhankelijke bibliotheken oplossen

Maven lost automatisch afhankelijke bibliotheken op, een eigenschap die vaak ter sprake komt als mensen het hebben over wat Maven nuttig maakt.

Als je een jar-bestand wilt toevoegen, moet je de target jar ophalen, maar je hebt misschien meer jars nodig om het te laten werken. In zulke gevallen haalt Maven automatisch de benodigde jars op.

Zie het volgende artikel voor specifieke resolutiemechanismen voor afhankelijke bibliotheken.

Hoe Maven automatisch jar bibliotheek afhankelijkheden oplost.

2-3. Beheer van potbibliotheken

Maven kan potten beheren. Het beheren is hetzelfde als het eerder genoemde "resolving dependent libraries", maar het is ook mogelijk om jars te beheren die alleen nodig zijn voor testen, jars die alleen nodig zijn tijdens het bouwen, enzovoort.

Maven werkt in principe door informatie te schrijven naar een bestand genaamd pom.xml en Maven leest de pom.xml, maar je kunt jars beheren door naar dit bestand de naam van het jar bestand te schrijven dat je nodig hebt, de versie van het jar bestand en waarom je het nodig hebt (bv. of je het nodig hebt voor testen of bouwen). Het is mogelijk om de potten te beheren door naar dit bestand te schrijven. Bovendien wordt de informatie die nodig is om Maven te gebruiken gecompileerd in pom.xml, zodat dit bestand kan worden gebruikt om gemakkelijk dezelfde ontwikkelomgeving (build environment) voor iedereen te creëren.

3. samenvatting

Als Maven in een paar woorden zou moeten beschrijven wat het is, dan zou het "build management tool" zijn. Zoals vermeld op de Maven website, is het doel van Maven enkel "om ontwikkelaars in staat te stellen om de volledige staat van hun ontwikkelingswerk te begrijpen in de kortst mogelijke tijd". Functies voor dit doel zijn onder meer "uitvoeren van taken die nodig zijn voor basis builds", "oplossen van afhankelijkheidsbibliotheken" en "beheren van jar libraries".

Bedankt voor het kijken tot het einde.