Kas yra Apache Maven? POM'ai, gyvavimo ciklai ir priklausomybių valdymas


Paskelbimo data:

Atnaujinta:


Techniniai straipsniai > Kas yra Apache Maven? POM'ai, gyvavimo ciklai ir priklausomybių valdymas

2026 m. būsena ir saugus naudojimas

Išvada: „Maven“ yra įprastas „Java“ kūrimo ir projektų valdymo įrankis. POM deklaruoja projekto koordinates, priklausomybes, papildinius ir kūrimo parametrus; gyvavimo ciklo fazės suteikia komandoms pakartojamą būdą kompiliuoti, išbandyti, supakuoti, tikrinti ir publikuoti artefaktus.

Ką išmoksite

  • Ką „Maven“ valdo ir kas vis dar priklauso šaltinio valdymui arba CI konfigūracijai.
  • Kaip susijusios POM koordinatės, repozitorijos, papildiniai, fazės ir priklausomybės apimtis.
  • Kaip perskaityti pradinę apžvalgą nesupainiojant priklausomybės nustatymo ir visos versijos.

Kam tai skirta: „Java“ kūrėjai, vertinantys „Maven“ arba bandantys suprasti paveldėtą pom.xml.

2026 m. kontekstas: naudokite „Maven Wrapper“, prisekite papildinių versijas, apsaugokite repozitorijos kredencialus ir patikrinkite veiksmingą POM CI. Toliau pateikti pavyzdžiai paaiškina pagrindus; patvirtinkite esamo papildinio ir JDK suderinamumą oficialiuose dokumentuose.

Saugos pastaba: pradiniame straipsnyje pateiktos komandos ir konfigūracijos pavyzdžiai nebuvo pakartotinai vykdomi dabartinėje gamybos aplinkoje. Prieš taikydami, patikrinkite palaikomas versijas, atsargines kopijas, prieigos valdiklius ir atšaukimo veiksmus atskiroje bandymo aplinkoje.

Pagrindiniai oficialūs šaltiniai

Apžvalga.

Apache Maven, toliau vadinama Maven, yra daug funkcijų turintis Java build ir projektų valdymo įrankis. Šiame straipsnyje jo paskirtis paaiškinama per POM, priklausomybių valdymą ir build lifecycle.

Turinys

  1. Kas yra "Maven"?
  2. Ką galite daryti naudodami "Maven
  3. santrauka

1. Kas yra "Maven"?

Maven yra Java projektų build ir valdymo įrankis. Jei build sąvoka dar neaiški, pirmiausia perskaitykite šį straipsnį.

Ką reiškia kurti "Java"?

Build procesą sudaro kelios užduotys, pavyzdžiui:

  • išspręsti JAR bibliotekų priklausomybes;
  • nurodyti build rezultatų išvesties katalogą;
  • sukurti JAR arba WAR artefaktus.

"Maven" valdo šias su kūrimu susijusias užduotis.

"Maven" svetainėje aprašoma "Maven" paskirtis. (What is Maven?)

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

Toliau pateiktame sąraše "Maven tikslai" pateikiama svarbiausia informacija, padedanti suprasti "Maven".

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

Trumpai tariant, Maven standartizuoja build procesą ir padeda komandai atkurti tą pačią projekto aplinką.

2. Ką galima atlikti su Maven

Toliau aptariamos pagrindinės Maven funkcijos, naudojamos pakartojamam build procesui sukurti.

2-1. Atlikite užduotis, reikalingas pagrindiniam sukūrimui

Žinoma, "Maven" yra kūrimo valdymo įrankis, todėl jis gali atlikti visas toliau išvardytas kūrimo užduotis.

  • test (Atlikti bandymą)
  • clean (Atkurti klasės failus.)
  • build (sukurti JAR arba WAR artefaktą)

2-2. Priklausomybių sprendimas

Maven pagal POM automatiškai suranda projektui reikalingas bibliotekas ir jų tranzityvias priklausomybes.

Taigi nereikia kiekvieno JAR failo ieškoti ir atsisiųsti rankiniu būdu. Maven parenka deklaruotą versiją, atsisiunčia susijusius artefaktus ir išsaugo juos vietinėje repozitorijoje.

Išsamiau šis mechanizmas paaiškintas kitame straipsnyje.

Kaip "Maven" automatiškai išsprendžia JAR bibliotekų priklausomybes.

2-3. JAR priklausomybių valdymas

Maven valdo ne tik JAR versijas, bet ir jų scope, todėl galima atskirti bibliotekas, reikalingas kompiliavimui, testams ar vykdymui.

Ši informacija deklaruojama pom.xml faile. Kadangi POM saugomi artefaktų pavadinimai, versijos, scope ir build nustatymai, visi komandos nariai gali atkurti vienodą projekto aplinką.

3. Santrauka

Maven suvienodina projekto build procesą, sprendžia priklausomybes ir valdo artefaktus pagal pom.xml. Dėl to projekto būklę lengviau suprasti, o aplinką – atkurti kitame kompiuteryje ar CI.

Tikimės, kad šis paaiškinimas buvo naudingas.