maven dependency integration with eclipse
I denne opplæringen vil vi diskutere integrasjonen av Maven med Eclipse og TestNG, Maven Dependency Scope og Maven Deployment Automation i detalj:
I forrige opplæring diskuterte vi sammenligningen mellom Gradle vs Maven og Maven Plugins. Denne opplæringen forklarer hvordan du integrerer Maven med andre verktøy, Maven-avhengighet og Maven-distribusjon.
hvordan reversere array i java
La oss komme i gang!
=> Besøk her for den eksklusive Maven Training Tutorial Series.
Hva du vil lære:
- Integrasjon av Maven med formørkelse
- Integrasjon av Maven med TestNG
- Maven avhengighetsomfang
- Maven Deployment Automation
- Maven Release Plugin
- Konklusjon
- Anbefalt lesing
Integrasjon av Maven med formørkelse
Hvordan man integrerer Maven med Eclipse har allerede blitt diskutert grundig om dette side
I visse scenarier der vi bygger et Maven-prosjekt fra ledeteksten og vi må bringe det prosjektet til Eclipse, skal følgende trinn utføres.
#1) Naviger til plasseringen av pom-filen for Maven-prosjektet. Kjør kommandoen nedenfor.
mvn formørkelse: formørkelse
# 2). Klassesti og .prosjekt vil bli opprettet på stedet for Maven-prosjektet.
Bekreft om Maven-pluginet allerede er gitt i formørkelsen fra Windows => Innstillinger , Maven burde være til stede der. Alle gjeldende Eclipse-versjoner har Maven-plugins som standard, og hvis den ikke er der, kan vi få den fra her .
# 3) Nå for å få Maven og Eclipse til å fungere sammen, importerer du Maven-prosjektet fra filen. Velg deretter Eksisterende Maven-prosjekt.
# 4) Bla gjennom plasseringen til prosjektet og fortsett.

Bildet avbildet over viser Maven-prosjektet importert til formørkelse.
Integrasjon av Maven med TestNG
Hvordan du integrerer Maven med TestNG har blitt diskutert grundig på siden nedenfor.
=> Integrering av Maven med TestNg ved hjelp av Maven Surefire Plugin
Mens vi har integrert Maven med TestNG i prosjektet vårt, kan det være situasjoner der prosjektet vårt har mer enn en Testng xml-fil. For eksempel, hele funksjonene til regresjonspakken er beskrevet i den ene testng.xml og sunnhetstesttilfeller er beskrevet i den andre testng.xml-filen.
I en situasjon som denne, må vi bruke profil konsept i Maven. I pom-filen må vi definere profilene. Hver er en del av taggen og har en tilknytning til den.
En pom.xml-fil med profilkodebit er gitt nedenfor:
Regression org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngRegression.xml Sanity org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngSanity.xml
Vær oppmerksom på at vi har to profiler ovenfor, beskrevet under, og hver profil har en id tilknyttet. For eksempel, Regresjon og Tilregnelighet også, under suiteXmlFiles, definerte vi navnet på Testng xml-filen som tilsvarer id ( testngRegression.xml og testngSanity.xml ).
hvordan du åpner en .apk fil
Dermed har vi to profiler her, og vi kan kontrollere hver Testng-fil ved hjelp av en enkelt pom-fil.
Nå for å utløse en testtilfelle for hver Testng-fil direkte fra ledeteksten, må vi flytte til prosjektmappen og kjøre følgende kommando.
mvn test –PRegression
Når dette er utført, søker Maven i profilen med ID-regresjonen og den tilsvarende testngRegression.xml fil. Dermed blir bare testene involvert der utført.
På samme måte er kommandoen for en profil med id Sanity:
mvn test –PSanity
Her er det testngSanity.xml filen brukes til å bestemme testsakene som skal utføres. Således for å utløse et bestemt sett med testtilfeller, trenger vi ikke endre TestNG-filnavnet i pom, snarere kan det lett oppnås ved å opprettholde separate TestNG-filer.
I pom-filen kan vi kartlegge disse filene og til slutt kjøre dem ved hjelp av profiler i Maven fra ledeteksten.
Maven avhengighetsomfang
Maven har totalt seks omfang som listet opp nedenfor.
- sørget for
- Test
- System
- Import
- Kompilere
- Kjøretid
# 1) Runtime Scope
Maven-avhengighet har et omfang som kjøretid og brukes ikke til byggeformål. Det utgjør en klassevei for kjøring og testing av prosjektet. Kodebiten nedenfor viser en avhengighet av kjøretiden.
com.softwaretesting MavenJava 2.3 runtime
# 2) Systemomfang
Maven-avhengighet med omfang som et system har en likhet med det angitte omfanget. Systemavhengigheter kan ikke lastes ned fra det eksterne depotet og ligger vanligvis i prosjektets kataloger. Kodebiten nedenfor viser avhengighet av systemomfanget.
com.software MavenJava1 system 3.0 ${dir}warWEB-INFlibdep.jar
# 3) Forutsatt omfang
Maven-avhengighet som har et omfang som gitt, kreves for å bygge og teste prosjektene. Det anbefales ikke å eksportere denne avhengigheten, ettersom de er tilgjengelige på kjøretiden. Denne avhengigheten er imidlertid nødvendig for å kjøre bygningen. Kodebiten nedenfor viser angitt omfangsavhengighet.
com.test MavenJava2 5.1.1 provided
# 4) Testomfang
Maven-avhengighet som har et omfang av testen er ikke nødvendig for bygging og drift av prosjektet. De brukes hovedsakelig til å kompilere og kjøre enhetstesttilfellene. Kodebiten nedenfor viser en avhengighet av testomfanget.
com.testing MavenJava3 1.0.2 test
# 5) Importomfang
Inne i pom-filen, den avhengighetLedelse delen inneholder omfangsimporten. Dette betyr avhengigheten som skal endres med den effektive gruppen av avhengigheter gitt i avhengighetsadministrasjon-delen av pom-filen. Kodebiten nedenfor viser avhengighet av importområdet.
com.testhelp MavenJava4 SNAP import pom
# 6) Kompilere omfang
Maven-avhengighet som har et omfang av kompilering er standard. Denne avhengigheten er viktig for å bygge, teste og kjøre prosjektet. Dette er stort sett viktig for å løse Java-kildekoden som har importuttalelser. Kodebiten nedenfor viser en kompilasjonsavhengighet.
logging log 2.1.3 compile
Maven Deployment Automation
Prosjektdistribusjon er en kritisk fase og involverer flere trinn definert som listet nedenfor:
- Koden utviklet for å bli sjekket i depotet.
- Kildekode som skal lastes ned fra depotet.
- Kompilering og bygging av applikasjonen og generering av JAR- eller WAR-filer.
- Sette de identifiserte JAR- eller WAR-filene på et kjent nettverkssted.
- Last inn JAR- eller WAR-filene.
- Distribuer de nedlastede JAR- eller WAR-filene til målserveren.
- Det nye versjonsnummeret på applikasjonen og datoen som skal oppdateres i dokumentasjonen.
Ovennevnte trinn følges av hvert medlem av teamene som er involvert i prosjektet. Ut av de ovennevnte trinnene, hvis noen blir savnet eller noe ikke er riktig gjort, resulterer det i feil ved bygging og distribusjon . Så i mellom, hvis det er noen feil, må de løses automatisk.
Maven følger distribusjonsautomatiseringsmetoden for å gjøre distribusjonen automatisk og robust. Dette oppnås ved å kombinere prosessene som er oppført nedenfor:
- Bygging og utgivelse av prosjektet som skal ivaretas av Maven.
- Kildekode som skal administreres av subversjon og kildekodedepot.
- Prosjekt binærfiler for å ta vare på den eksterne depotlederen.
Mavens automatiske bygg- og frigjøringsprosess blir ivaretatt av Maven Release-plugin-modulen. Pom.xml-filen bør oppdateres som vist nedenfor.
Koden nedenfor er for com.softwaretestHelp-prosjektet pom.xml
4.0.0 com.softwaretestHelp TestApplication war 2.0 WebTest Maven Java http://maven.apache.org http://www.svn.com scm:svn:http://localhost:8080/svn/jrepo/trunk/Framework scm:svn:testing/test@localhost:8080:common_core_api:1101:code SampleTest-Web-Release Release repository http://localhost:8082/nexus/content/repositories/SampleTest-Web-Release org.apache.maven.plugins maven-release-plugin 2.0-beta-9 false deploy (SampleTest-Web- checkin) junit junit 3.9 test
De fremtredende funksjonene i pom.xml-filen ovenfor er oppført nedenfor:
hvordan du åpner en .jar-fil på Windows 10
- SCM : Plasseringen til SVN (der kildekoden er til stede) er konfigurert av SCM.
- Datalagre : Dette er stedet for JAR- eller WAR- eller EAR-filene eller andre prosjektgjenstander etter at prosjektet er fullført.
- Plugg inn : Distribusjonsautomatisering utført av Maven utgivelsesplugin.
Maven Release Plugin
Maven release plugin utfører følgende aktiviteter:
- mvn utgivelse: ren - Det renser arbeidsområdet til den forrige bygningen før ankomsten av den fremtidige bygningen.
- mvn utgivelse: tilbakeføring - I tilfelle feil med den forrige bygningen, tilbakestilles den til arbeidsområdet.
- mvn utgivelse: forbered deg - Det verifiserer om det er noen uforpliktende endringer i filer eller ikke. Sjekker også avhengighetene av øyeblikksbildet og oppdaterer versjonsnummeret til applikasjonen. Det endrer pom til SCM. Den tar seg av utførelsen av testsaken og forplikter den endelige koden til SCM. Det utfører merking av koden i subversionen. Endelig blir versjonsnummeret økt og festet til SNAPSHOT for andre utgivelser i fremtiden av dette pluginet.
- mvn utgivelse: utføre - Den sjekker koden som finnes i depotet og kjører deretter Maven build-mål for å distribuere build-artefakten til depotet.
Til slutt må vi kjøre kommandoen nedenfor for å bygge prosjektet:
mvn release: prepare
Når vellykket fullføring av byggingen er ferdig, kjører du følgende kommando:
mvn release: perform
Nå er WAR-filen lastet opp til depotet.
Konklusjon
Vi håper at store deler av Maven-integrasjonen med Eclipse, integrasjonen med TestNG, Maven-profiler, avhengighetsomfanget til Maven og distribusjonsautomatisering av Maven skal være forståelig nå. Vi har også diskutert det meste av omfanget av avhengighetene her.
For Maven-distribusjonsprosessen utforsket vi alle trinnene grundig og forklarte noen av Maven-utgivelsesprogrammene. Les gjennom emnene og gradvis vil du forstå den virkelige essensen av å bruke Maven i vårt arbeid.
Vi vil fortsette med serien og samle kunnskap om Maven Jenkins Integration, Maven intervju spørsmål osv. I våre kommende veiledninger.
=> Sjekk ALLE Maven opplæringsprogrammer her.
Anbefalt lesing
- Hva er Maven - Maven Tutorial for nybegynnere
- In-Depth Eclipse Tutorials For Beginners
- TestNG Tutorial: Introduksjon til TestNG Framework
- Eclipse Tutorial: Integrering TestNG i Eclipse Java IDE
- Konfigurere Maven med Eclipse Java IDE
- Gradle Vs Maven And Maven Plugins
- Maven With Jenkins & Maven Documentation For Projects
- Integrering av Maven med TestNg ved hjelp av Maven Surefire Plugin