what is maven maven tutorial
Denna inledande Maven-handledning kommer att förklara vad som är Maven, varför använda Maven, dess definition, grundläggande terminologier, typer av Maven Repository, etc:
I den här handledningen kommer vi att utforska Maven, dess definition, översikt, operativa steg på Maven och förstå de grundläggande terminologierna på Maven, aktiviteter som utförs av Maven och typerna av Maven-arkiv i detalj.
Låt oss börja!!
Lista över handledning i denna Maven-serie
Handledning nr 1: Vad är Maven - Maven-handledning för nybörjare (Denna handledning)
Handledning nr 2: Vad är POM (projektobjektmodell) och Pom.Xml i Maven
Självstudie 3: Gradle Vs Maven And Maven Plugins
Självstudie 4: Maven beroende och integration med förmörkelse och testNG
Handledning nr 5: Maven With Jenkins & Maven Documentation For Projects
Självstudie nr 6: 31 Vanliga frågor och svar om Maven-intervjuer
Vad du kommer att lära dig:
Vad är Maven
Maven är ett verktyg för bygg- och projektledning som vanligtvis används i ramar byggda i Java. Den är utvecklad av Apache Software Foundation. Maven, ett ord från det jiddiska språket, betyder ”kunskapssamlare”. Det introducerades för att göra processen att utlösa bygga i Jakarta Turbine Project.
Maven styrs av pom-filen (Project Object Model). När vi arbetar med inbyggda Java-ramar måste vi ofta hantera ett antal beroenden.
Innan Maven kom in i bilden måste alla beroenden, det vill säga inget annat än JAR-filer, läggas till i vårt ramverk manuellt. Vi behövde också ta hand om mjukvaruuppgraderingen i vårt projekt.
hur öppnar jag .jar-filer
Maven ser till att projekt-JAR och bibliotek laddas ner automatiskt. Endast informationen om versionerna av programvaran och typen av beroenden behöver beskrivas i pom .xml-filen.
Maven kan ta hand om projekt på Ruby, C # och andra språk. Det tar upp uppgiften att bygga projekt, deras beroenden och dokumentation.
ANT, ett annat verktyg utvecklat av Apache Software Foundation, används också för att bygga och distribuera projekt. Men Maven är mer avancerad än ANT. Liksom ANT har Maven gjort processen att bygga enkel. Kort sagt, Maven har gjort utvecklarnas liv enkelt.
Varför använda Maven
Maven utför följande aktiviteter:
- Förvar för att få beroenden.
- Att ha en liknande mappstruktur över hela organisationen.
- Integration med kontinuerliga integrationsverktyg som Jenkins.
- Plugins för testutförande.
- Den ger information om hur programvaran / projektet utvecklas.
- Byggprocessen görs enklare och konsekvent.
- Ger riktlinjer för de bästa metoderna som ska följas i projektet.
- Förbättrar projektets prestanda.
- Lätt att flytta till nya attribut från Maven.
- Integration med versionskontrollverktyg som Git.
Maven tar hand om processer som releaser, distribution, rapportering, builds, dokumentation och SCMs. Maven ansluter till Maven Central-arkivet och laddar dem lokalt. Några av de IDE som stöder projektutveckling med Maven är NetBeans, Eclipse, IntelliJ och så vidare.
Maven ska användas i våra projekt i följande scenarier:
- Om projektet kräver ett stort antal beroenden.
- Om versionen av beroenden behöver uppgraderas ofta.
- Om projektet behöver ha snabb dokumentation, sammanställning och förpackning av källkoden till JAR- eller ZIP-filer.
Operativa stegen för Maven
# 1) First Maven går igenom POM .xml-filen.
#två) Beroenden laddas in i det lokala förvaret.
# 3) Går igenom de inbyggda livscyklerna i Maven enligt nedan:
- Standard: Tar hand om implementeringen av projektet.
- Rena: Tar bort eventuella fel, därigenom rensar projektet och tar bort artefakten som producerats från den tidigare processen med byggnaden.
- Webbplats: Tar hand om dokumentationen av projektet.
# 4) Varje inbyggd cykel har flera faser. Till exempel, standard har tjugotre faser medan ren och webbplats har tre respektive fyra faser.
# 5) Varje Maven-cykel går igenom flera steg där ett visst steg har ett specifikt mål.
Några av de viktiga faserna listas nedan:
- Bekräfta: Verifierar om alla förutsättningsdata för att byggnaden ska slutföras är tillgängliga.
- Sammanställa: Källkoden sammanställs.
- Testkompilera: Testkällkoden sammanställs.
- Testa: Enhetstestfall utförs.
- Paket: Källkoden sammanställs och förpackas i JAR- eller ZIP-filer.
- Integrationstest: Paketet distribueras och om det finns några problem utförs integrationstestfall.
- Installationspaket: Den installeras i det lokala förvaret.
- Implementera: En kopia av paketet görs tillgänglig från fjärrförvaret.
Dessa faser måste köras i ordning. Även om distribuera fas, dvs slutfasen av Maven-cykeln måste exekveras måste alla tidigare faser till den cykeln slutföras framgångsrikt.
Från kommandotolken körs faserna på följande sätt:
mvn , till exempel, mvn validera
# 6) En grupp av Maven-mål utgör en fas. Precis som faser i Maven måste varje mål köras i en specifik ordning.
Ett mål har följande syntax:
Plugin: mål
Här har vi diskuterat några av faserna tillsammans med de mål som är knutna till dem:
- kompilator: kompilera (används i sammanställningsfasen)
- kompilator: test (används i fasen av testkompilering)
- surefire: test (används i testfasen)
- install: install (används i installationsfasen)
- burk: krig (används i förpackningsfasen)
- krig: krig (används i fasen av förpackningen)
De operativa stegen för hur Maven fungerar visas schematiskt nedan:
Terminologier i Maven
- POM : Det står för Project Object Model. Det är en XML-fil som har information om projektet, beroenden i projektet, källfilens katalog, plugin-information och så vidare. Det här är den nödvändiga informationen för att Maven ska kunna bygga projektet helt. Maven läser pom-filen för att få all denna information.
Maven-projekt i Eclipse IDE med ett kodavsnitt från POM XML-filen visas nedan.
- GroupId : Känner igen vårt projekt unikt från alla projekt. GroupId är en del av pom-filen. Det sägs ofta som en identitet för projektgruppen.
- ArtefaktId : En jar-fil som distribueras till Maven-arkivet. ArtifactId är en del av pom-filen. Det sägs ofta som en identitet och ett namn på vårt projekt.
- Version : Anger versionen av projektets burk. Version är också en del av pom-filen.
Som avbildad i bilden ovan kan vi se att taggar utgör den del av beroenden som definierats för projektet.
rotorsaksanalys vid programvarutestning
- Maven Central Repository : Detta är platshållaren där burkar, bibliotek, plugins och konfigurationsdata som krävs av Maven för att bygga projektet finns.
Om vi vill lägga till Selenberoenden i vårt projekt måste vi ha kodavsnittet nedan till pom-filen.
org.seleniumhq.selenium selenium-java 4.0.0-alpha-5
Av de flera projekt som hissas i Mavens centrala förvar identifierar det Selenium med hjälp av groupId. På samma sätt är ArtifactId som ett delprojekt under groupId.
Till exempel, Selen-kod stöds av språk som Java, C # och så vidare. Här från artifactId är det uppenbart att vi bara ansluter till JAR associerade med Java. Den version av JAR som ska associeras till projektet är också en del av beroendet.
Vi kan också publicera vårt eget projekt i Maven-arkivet genom att tillhandahålla dessa tre informationsbitar.
Maven Repository
Maven Repository kan vara av tre typer:
- Lokalt arkiv
- Fjärrförvar
- Centralförvar
När Maven läser beroenden från POM-filen söker den först i det lokala förvaret, sedan till det centrala och slutligen till det fjärrförvaret. Om beroendet inte finns i någon av de tre förvaren, meddelas användaren med ett fel och processen stoppas.
# 1) Maven Local Repository
Det lokala förvaret finns i vårt lokala system - mestadels i .m2 (C: / Users / superdev /.m2) -katalog som visar sin närvaro när Maven har installerats i vårt system och vi har lyckats utföra ett Maven-kommando.
Det är också möjligt att ändra denna plats i inställningar.xml (MAVEN_HOME / conf /settings.xml) med hjälp av localRepository märka.
Nedanför xml-kodavsnittet visas hur du ändrar platserna för det lokala förvaret:
C: Maven m2 # 2) Maven Central Repository
Centralförvar utvecklas av Apache Maven-gruppen och är värd på webben. Detta betraktas som det centrala förvaret och det har alla vanliga bibliotek. Som ett lokalt arkiv kan vi också ändra platsen där de ska laddas ner som standard genom att ändra inställningen. Xml.
# 3) Maven Remote Repository
Fjärrförvar finns också på webben. I vissa scenarier kan ett företag utveckla sitt eget fjärrförvar och utföra distributioner på sina privata projekt. Dessa kommer att ägas av det specifika företaget och kan endast drivas inuti det.
Fjärrförvaret har liknande arbetsmönster som ett centralt förvar. Närhelst några beroenden eller konfigurationer krävs från dessa förvar, ska de först laddas ner till vårt lokala och sedan användas.
Ett exempel på xml-kod för fjärrförvar med id och webbadress visas nedan.
com.src.repository http://maven.comp.com/maven2/
Slutsats
Vi hoppas att du har en klar uppfattning om vad maven är, varför vi använder Maven, operativa steg på Maven, Maven-cykler, faser, mål, grundläggande terminologier på Maven och typerna av Maven-arkiv.
I vår nästa handledning ska vi utforska hur man bygger ett projekt i Maven, miljö inställd för Maven och många andra relaterade ämnen.
Rekommenderad läsning
- Integration av Maven med TestNg med hjälp av Maven Surefire Plugin
- AWS CodeBuild Tutorial: Extrahera kod från Maven Build
- Konfigurera Maven med Eclipse Java IDE
- Vad är POM (projektobjektmodell) och pom.xml i Maven
- Gradle Vs Maven And Maven Plugins
- Maven With Jenkins & Maven Documentation For Projects
- 31 Vanliga frågor och svar om Maven-intervjuer
- Maven beroende och integration med förmörkelse och testNG