Maven Java proiektuak kudeatzeko erabiltzen den tresna bat da. Proiektu independente bezala hasi bazen ere, arrakastatsu bihurtzen joan den heinean Apache fundazioak beregan hartu egin du.

Project Object Model (POM) izeneko fitxategi bat erabiltzen du eraiki beharreko software proiektua eta bere menpekotasunak definitzeko. Gogoratu menpekotasun edo dependentzia bat proiektu konkretu batek bai exekutatzeko edo baita beste edozein helbururako ere beharrezkoa duen elementua dela.

POM fitxategi honen inguruan, XML fitxategi bat da, proiektua deskribatzen duena. Fitxategi hau beharrezkoa da Maven proiektu eta menpekotasun guztientzat, adibidez proiektuan koderik ez duen menpekotasun bat erantsi dezakegu, adibidez irudi fitxategiak dituen proiektu bat, baina pom.xml fitxategia beharrezkoa izango du honek ere.

Hauek dira Maven proiektu batek dituen bizi zikloak:

  • Compile: .class fitxategiak sortu proiektuaren .java fitxategiak erabiliz.
  • Test: Junit erabilita proiektuaren barne definiturik dauden testak abian jartzen dira.
  • Package: .jar fitxategia sortzen du .class fitxategietatik abiatuz.
  • Install: .jar fitxategia gure ordenagailuko .m2 karpetan uzten du. Horrela, jar horiek ordenagailu berdinean beste proiektu batzuetatik atzitu daitezke.
  • Deploy: .jar fitxategia urruneko zerbitzari batean kopiatzen du, horrela zerbitzari hori atzitu dezakeen edozein Maven proiektuk jar hori erabili dezake.

Kanpo estekak aldatu