what is maven maven tutorial
Acest tutorial introductiv Maven vă va explica ce este Maven, de ce să utilizați Maven, definiția acestuia, terminologiile de bază, tipurile de depozit Maven etc.:
În acest tutorial, vom explora Maven, definiția acestuia, prezentarea generală, pașii operaționali pe Maven și vom înțelege terminologiile de bază pe Maven, activitățile efectuate de Maven și tipurile de depozite Maven în detaliu.
Să începem!!
Lista tutorialelor din această serie Maven
Tutorial nr. 1: Ce este Maven - Tutorial Maven pentru începători (Acest tutorial)
Tutorial nr. 2: Ce sunt POM (Project Object Model) și Pom.Xml în Maven
Tutorial # 3: Gradle Vs Maven și pluginurile Maven
Tutorial # 4: Dependență și integrare Maven cu Eclipse și TestNG
Tutorial # 5: Maven cu documentația Jenkins & Maven pentru proiecte
Tutorial nr. 6: 31 Cele mai frecvente întrebări și răspunsuri la interviu Maven
Ce veți învăța:
Ce este Maven
Maven este un instrument de compilare și management de proiect care este utilizat în general în cadrul construit în Java. Este dezvoltat de Apache Software Foundation. Maven, un cuvânt din limba idiș, înseamnă „culegător de cunoștințe”. A fost introdus pentru a face procesul de declanșare a construcției în proiectul de turbină Jakarta.
Maven este controlat de fișierul Project Object Model (pom). În timp ce lucrăm cu framework-uri Java încorporate, de multe ori trebuie să ne ocupăm de o serie de dependențe.
Înainte ca Maven să intre în imagine, toate dependențele, care nu sunt altceva decât fișiere JAR, trebuiau adăugate manual în cadrul nostru. De asemenea, trebuia să ne ocupăm de actualizarea software-ului din proiectul nostru.
ce este un fișier dat mac
Maven se asigură că JAR-urile și bibliotecile proiectului sunt descărcate automat. Doar informațiile referitoare la versiunile software-ului și tipul de dependențe trebuie descrise în fișierul pom .xml.
Maven se poate ocupa de proiecte în Ruby, C # și în alte limbi. Preia sarcina de a construi proiecte, dependențele acestora și documentația.
ANT, un alt instrument dezvoltat de Apache Software Foundation, este, de asemenea, utilizat pentru construirea și implementarea proiectelor. Dar Maven este mai avansat decât ANT. La fel ca ANT, Maven a simplificat procesul de construire. Astfel, pe scurt, Maven a ușurat viața dezvoltatorilor.
De ce să folosești Maven
Maven efectuează activitățile de mai jos:
- Depozit pentru a obține dependențele.
- Având o structură de dosare similară în întreaga organizație.
- Integrare cu instrumente de integrare continuă precum Jenkins.
- Pluginuri pentru executarea testelor.
- Oferă informații despre modul în care software-ul / proiectul este dezvoltat.
- Procesul de construire se face mai simplu și consecvent.
- Oferă îndrumări pentru cele mai bune practici care trebuie urmate în cadrul proiectului.
- Îmbunătățește performanța proiectului.
- Ușor de mutat către noile atribute ale lui Maven.
- Integrare cu instrumente de control al versiunilor precum Git.
Maven se ocupă de procese precum versiuni, distribuție, raportare, compilări, documentare și SCM-uri. Maven se conectează la depozitul Maven Central și le încarcă în local. Unele dintre IDE-urile care sprijină dezvoltarea proiectului cu Maven sunt NetBeans, Eclipse, IntelliJ și așa mai departe.
Maven ar trebui utilizat în proiectele noastre în următoarele scenarii:
- Dacă proiectul necesită un număr mare de dependențe.
- În cazul în care versiunea dependențelor are nevoie de o actualizare frecventă.
- Dacă proiectul trebuie să aibă o documentare rapidă, compilarea și ambalarea codului sursă în fișiere JAR sau ZIP.
Pașii operaționali ai Maven
# 1) Mai întâi Maven trece prin fișierul POM .xml.
#Două) Dependențele sunt încărcate în depozitul local.
# 3) Parcurge ciclurile de viață încorporate ale lui Maven, după cum se arată mai jos:
- Mod implicit: Se ocupă de implementarea proiectului.
- Curat: Elimină orice erori, astfel curăță proiectul și elimină artefactul produs din procesul anterior al construcției.
- Site: Se ocupă de documentația proiectului.
# 4) Fiecare ciclu încorporat are mai multe faze. De exemplu, implicit are douăzeci și trei de faze în timp ce curat și site-ul are trei și respectiv patru faze.
# 5) Fiecare ciclu Maven parcurge mai multe etape în care o anumită etapă are un obiectiv specific.
Unele dintre fazele importante sunt enumerate mai jos:
- Valida: Verifică dacă sunt disponibile toate datele preliminare pentru finalizarea construcției.
- Compila: Codul sursă este compilat.
- Test- compilați: Codul sursă de testare este compilat.
- Test: Sunt executate cazuri de testare unitare.
- Pachet: Codul sursă este compilat și ambalat în fișiere JAR sau ZIP.
- Test de integrare: Pachetul este implementat și dacă există probleme, cazurile de test de integrare sunt executate.
- Pachet de instalare: Este instalat în depozitul local.
- Implementați: O copie a pachetului este pusă la dispoziție din depozitul de la distanță.
Aceste faze trebuie executate în ordine. De asemenea, dacă implementa faza de sfârșit a ciclului Maven trebuie executată, apoi toate fazele anterioare ale ciclului respectiv trebuie finalizate cu succes.
Din promptul de comandă, fazele sunt executate în felul următor:
mvn , de exemplu, mvn valida
# 6) Un grup de obiective Maven alcătuiește o fază. La fel ca fazele lui Maven, fiecare obiectiv trebuie executat într-o ordine specifică.
Un obiectiv are următoarea sintaxă:
Plugin: obiectiv
Aici am discutat câteva dintre faze împreună cu obiectivele legate de acestea:
- compilator: compilare (utilizat în faza de compilare)
- compilator: test (utilizat în faza de compilare a testului)
- surefire: test (utilizat în faza de testare)
- instalare: instalare (utilizat în faza de instalare)
- borcan: război (utilizat în faza de ambalare)
- război: război (utilizat în faza de ambalare)
Etapele operaționale ale modului în care funcționează Maven sunt prezentate schematic mai jos:
cum se deschide un fișier bittorrent
Terminologii în Maven
- POM : Înseamnă Project Object Model. Este un fișier XML care conține informații despre proiect, dependențele prezente în proiect, directorul fișierului sursă, informații despre plugin și așa mai departe. Acestea sunt datele necesare pentru ca Maven să construiască complet proiectul. Maven citește fișierul pom pentru a obține toate aceste informații.
Proiectul Maven în Eclipse IDE cu un fragment de cod din fișierul XML POM este prezentat mai jos.
- GroupId : Recunoaște proiectul nostru în mod unic din toate proiectele. GroupId face parte din fișierul pom. Se spune adesea ca o identitate pentru grupul de proiecte.
- ArtifactId : Un fișier jar care este implementat în depozitul Maven. ArtifactId este o parte a fișierului pom. Se spune adesea ca o identitate și un nume al proiectului nostru.
- Versiune : Specifică versiunea borcanului proiectului. Versiunea este, de asemenea, o parte a fișierului pom.
După cum este descris în imaginea de mai sus, putem vedea acest lucru, iar etichetele fac parte din dependențele definite pentru proiect.
- Depozitul central Maven : Acesta este substituentul în care sunt prezente borcane, biblioteci, pluginuri și date de configurare cerute de Maven pentru construirea proiectului.
Dacă dorim să adăugăm dependențe de Selenium în proiectul nostru, atunci trebuie să avem fragmentul de cod de mai jos în fișierul pom.
org.seleniumhq.selenium selenium-java 4.0.0-alpha-5
Dintre multiplele proiecte ridicate în depozitul central Maven, identifică Selenium cu ajutorul groupId. În mod similar, ArtifactId este ca un subproiect din grupul ID.
De exemplu, Codul de seleniu este acceptat de limbi precum Java, C # și așa mai departe. Aici, din artifactId, este evident că ne conectăm doar la JAR-urile asociate cu Java. De asemenea, versiunea JAR care trebuie asociată proiectului face parte, de asemenea, din dependențe.
De asemenea, putem publica propriul nostru proiect în depozitul Maven oferind aceste trei informații.
Depozit Maven
Depozitul Maven poate fi de trei tipuri:
- Depozit local
- Depozit la distanță
- Depozit central
Odată ce Maven citește dependențele din fișierul POM, acesta le caută mai întâi în depozitul local, apoi în central și, în final, în depozitul la distanță. Dacă dependențele nu se găsesc în niciunul din cele trei depozite, atunci utilizatorul este notificat cu o eroare și procesul este oprit.
# 1) Depozitul local Maven
Depozitul local se află în sistemul nostru local - mai ales în .m2 (C: / Users / superdev /.m2) director care își arată prezența odată ce Maven este instalat în sistemul nostru și am reușit să executăm cu succes o comandă Maven.
De asemenea, este posibil să modificați această locație în settings.xml (MAVEN_HOME / conf /settings.xml) cu ajutorul localRepository etichetă.
Sub fragmentul de cod XML, se arată cum să schimbați locațiile depozitului local:
C: Maven m2 # 2) Maven Central Repository
Depozit central este dezvoltat de grupul Apache Maven și este găzduit pe web. Acesta este considerat ca depozitul central și are toate bibliotecile comune. La fel ca un depozit local, putem modifica, de asemenea, locația în care vor fi descărcate în mod implicit, modificând setting.xml.
# 3) Maven Remote Repository
Depozitul la distanță este, de asemenea, găzduit pe web. În unele scenarii, o companie își poate dezvolta propriul depozit la distanță și poate realiza implementări în proiectele sale private. Acestea vor fi deținute de compania respectivă și pot fi operate numai în interiorul acesteia.
Depozitul la distanță are modele de lucru similare cu un depozit central. Ori de câte ori sunt necesare dependențe sau configurații din aceste depozite, acestea vor fi mai întâi descărcate în localul nostru și apoi utilizate.
Mai jos este prezentat un eșantion de cod XML pentru depozitul la distanță cu id-ul și adresa URL.
com.src.repository http://maven.comp.com/maven2/
Concluzie
Sperăm că ați avut o idee clară despre ce este Maven, de ce folosim Maven, pași operaționali pe Maven, cicluri Maven, faze, obiective, terminologii de bază pe Maven și tipurile de depozite Maven.
În următorul nostru tutorial, vom explora cum să construim un proiect în Maven, mediul creat pentru Maven și multe alte subiecte conexe.
Lectură recomandată
- Integrarea Maven cu TestNg folosind pluginul Maven Surefire
- Tutorial AWS CodeBuild: Extragerea codului din Maven Build
- Configurarea Maven cu Eclipse Java IDE
- Ce sunt POM (Project Object Model) și pom.xml în Maven
- Gradle Vs Maven și pluginurile Maven
- Maven cu documentația Jenkins & Maven pentru proiecte
- 31 Cele mai frecvente întrebări și răspunsuri la interviu Maven
- Dependență și integrare Maven cu Eclipse și TestNG