Sen sijaan, että kirjoittaisit pitkiä komentosarjoja projektien rakentamiseen ja riippuvuuksien manuaaliseen lataamiseen, voit käyttää Mavenia ja päästä eroon tästä sotkusta. Tämä Maven-opetusohjelman blogi kattaa kaiken, mitä tarvitset Mavenin käytön aloittamiseen projektissasi. Kun olet ymmärtänyt tämän Maven-opetusohjelman perusteellisesti, seuraava todennäköinen vaihe on oppia Jenkins, joka kattaa .
Tässä blogissa Maven-opetusohjelmassa käsitellään seuraavia aiheita:
- Miksi tarvitsemme Mavenia?
- Mikä on Maven?
- Maven-arkkitehtuuri
- Maven-elinkaari, vaiheet ja tavoitteet
- Demo-projekti.
Miksi tarvitsemme Mavenia?
Jos työskentelet Java-projektien parissa, tarvitset yleensä riippuvuuksia. Riippuvuudet ovat vain kirjastoja tai JAR-tiedostoja. Sinun on ladattava ja lisättävä ne manuaalisesti. Projektisi ohjelmistopinon päivitys tehtiin myös manuaalisesti ennen Mavenia. Joten tarvittiin parempi rakennustyökalu, joka käsittelisi tällaisia asioita.
Täällä Maven tulee kuvaan. Maven pystyy ratkaisemaan kaikki riippuvuuksiin liittyvät ongelmasi. Sinun tarvitsee vain määrittää riippuvuudet ja haluamasi ohjelmistoversio pom.xml-tiedostossa Mavenissa ja Maven huolehtii lopusta.Joten yritetään nyt ymmärtää, mikä Maven on.
Mikä on Maven?
Maven-projektin on kehittänyt Apache Software Foundation, jossa se oli aiemmin osa Jakarta-projektia. Maven on tehokas rakennusautomaatiotyökalu, jota käytetään ensisijaisesti Java-pohjaisiin projekteihin. Maven auttaa sinua ratkaisemaan ohjelmiston rakentamisen kaksi kriittistä puolta -
- Siinä kuvataan kuinka ohjelmisto rakennetaan
- Siinä kuvataan riippuvuudet.
Maven mieluummin käytäntö kuin kokoonpano. Maven lataa Java-kirjastot ja Maven-laajennukset dynaamisesti yhdestä tai useammasta arkistosta, kuten Maven Central Repository, ja tallentaa ne paikalliseen välimuistiin. Paikallisten projektien artefaktit voidaan myös päivittää tällä paikallisella välimuistilla. Maven voi myös auttaa sinua rakentamaan ja hallitsemaan C #, Ruby, Scala ja muilla kielillä kirjoitettuja projekteja.
Project Object Model (POM) -tiedosto on XML-tiedosto, joka sisältää projektiin liittyviä tietoja ja määritystietoja, kuten riippuvuuksia, lähdehakemistoa, laajennusta, tavoitteita jne., Joita Maven käyttää projektin rakentamiseen. Kun suoritat maven-komennon, annat mavenille POM-tiedoston komentojen suorittamiseen. Maven lukee pom.xml-tiedoston kokoonpanonsa ja toimintojensa suorittamiseksi.
Maven-tavoitteet
Milloin jonkun tulisi käyttää Mavenia?
- Jos projektissa on liikaa riippuvuuksia.
- Kun riippuvuusversio päivittyy usein.
- Jatkuva koontiversio, integrointi ja testaus voidaan helposti käsitellä käyttämällä maven-ohjelmaa.
- Kun tarvitset helpon tavan tuottaa dokumentaatiota lähdekoodista, lähdekoodin kokoaminen, kootun koodin pakkaaminen JAR- tai ZIP-tiedostoiksi.
Maven-arkkitehtuuri
Maven-elinkaari, vaiheet ja tavoitteet
1. Mavenin elinkaari
Maven noudattaa tiettyä elinkaarta kohdeprojektin käyttöönotossa ja jakamisessa.
Sisäänrakennettuja elinkaaria on kolme:
- oletuksena - Tämä on Mavenin tärkein elinkaari, koska se vastaa projektin käyttöönotosta.
- puhdas - Tätä elinkaarta käytetään projektin puhdistamiseen ja kaikkien edellisen rakennuksen luomien tiedostojen poistamiseen.
- sivusto - Tämän elinkaaren tavoitteena on luoda projektin dokumentaatio sivustosta.
Jokainen elinkaari koostuu vaiheiden sarjasta. Oletusarvoinen elinkaari koostuu 23 vaiheesta, koska se on Mavenin tärkein rakennuksen elinkaari
miten lopettaa java ohjelma
Toisaalta puhdas elinkaari koostuu kolmesta vaiheesta, kun taas työmaan elinkaari koostuu neljästä vaiheesta.
2. Maven-vaiheet
Maven-vaihe ei ole muuta kuin vaihe Maven-rakennuksen elinkaaressa. Jokainen vaihe suorittaa tietyn tehtävän.
Tässä on muutama tärkeä vaihe oletusrakenteen elinkaaressa -
- vahvista - Tässä vaiheessa tarkistetaan, onko kaikki koontiin tarvittavat tiedot käytettävissä
- koota - Tämä vaihe kokoaa lähdekoodin
- testi-koota - Tämä vaihe kokoaa testilähdekoodin
- testata - Tässä vaiheessa suoritetaan yksikötestit
- paketti - Tämä vaihe pakkaa käännetyn lähdekoodin jaettavaan muotoon (jar, war)
- integraatiotesti - Tämä vaihe käsittelee ja ottaa paketin käyttöön tarvittaessa integraatiotestien suorittamiseksi
- Asentaa - Tämä vaihe asentaa paketin paikalliseen arkistoon
- ottaa käyttöön - Tämä vaihe kopioi paketin etätietovarastoon
Maven suorittaa vaiheet tietyssä järjestyksessä. Tämä tarkoittaa sitä, että jos suoritamme tietyn vaiheen komennolla, kuten mvn, tämä ei vain suorita määritettyä vaihetta, vaan myös kaikki edelliset vaiheet.
Esimerkiksi, jos suoritat komennon mvn käyttöönotto, ts. Käyttöönottovaihe, joka on oletusrakennuksen elinkaaren viimeinen vaihe, tämä suorittaa kaikki vaiheet myös ennen käyttöönottovaihetta.
HTML-taulukko taulukossa
3. Maven-tavoitteet
Tavoitteiden sarja muodostaa vaiheen ja jokainen tavoite suorittaa tietyn tehtävän. Kun suoritat vaiheen, Maven suorittaa kaikki tavoitteet järjestyksessä, jotka liittyvät kyseiseen vaiheeseen. Syntaksi on plugin: tavoite. Jotkut vaiheista ja niihin sidotuista oletustavoitteista ovat seuraavat:
- kääntäjä: kääntää - kääntää vaihe
- kääntäjä: testi - koe-käännä vaihe
- surefire: testi - testivaihe
- asenna: asenna - asenna vaihe
- purkki ja sota: sota - pakettivaihe
Maven-laajennus on joukko tavoitteita. Nämä tavoitteet eivät kuitenkaan välttämättä ole sidottu samaan vaiheeseen.Esimerkiksi Maven Failsafe -laajennus, joka vastaa integrointitestien suorittamisesta. Yksikkötestausta varten tarvitset Maven surefire -laajennuksen.
Demo-projekti
Tässä osassa Maven opetusohjelma, katsomme demoprojektia. Osoittaakseni kuinka rakentaa projekti Mavenin avulla olen luonut Java-projekti yhdessä TestNG: n kanssa käyttäen Eclipse IDE: tä. Tämä on hyvin yksinkertainen ohjelma, johon olen kirjoittanut koodin verkkosivuston otsikon testaamiseksi.
Ohjelma käynnistää verkkoselaimen automaattisesti, siirtyy koodissa mainittuun verkkosivustoon, hakee kyseisen verkkosivun otsikon ja vertaa sitä odotettuun otsikkoon. Jos todellinen otsikko ja odotettu otsikko vastaavat toisiaan, testitapa läpäisee muuten se epäonnistuu.
Joten tähän projektiin tarvitset , Maven ja Eclipse ladattu järjestelmään. Järjestelmässäni käyttämäni versiot ovat seuraavat -
- Pimennys - Enterprise Edition -versio 4.12.0 (2019-06)
- Java - versio 1.8.0_211
- Maven - versio 3.6.1
- Tämän lisäksi sinun on ladattava TestNG-laajennus Eclipse-sovellukseen ja voit ladata sen seuraavien vaiheiden avulla -
- Avaa Eclipse ja siirry Ohjeeseen. Napsauta Ohjeessa Eclipse-kauppapaikkaa.
- Kirjoita Etsi-ruutuun TestNG ja napsauta Siirry. Tuloksissa näkyy TestNG for Eclipse. Sinun on ladattava se.
- Kun olet määrittänyt järjestelmän yllä mainituilla asioilla, olet valmis luomaan demoprojektin Mavenin avulla. Joten nyt aion kertoa teille kaikki tarvittavat vaiheet tämän tekemiseen.
- Napsauta Eclipse-tiedostossa Tiedosto -> Uusi -> Maven-projekti.
- Napsauta Luo yksinkertainen projekti (ohita arkkityypin valinta) ja napsauta sitten Seuraava.
- Nyt näet ikkunan, jossa on parametrit, kuten ryhmän tunnus, artefaktin tunnus ja niin edelleen.
- Ryhmätunnus on projektin omistavan ryhmän yksilöllinen tunnus.
- Artefact Id on lopullisen kokoamisyksikön nimi.
- Versio on luodun artefaktin versio. SNAPSHOT osoittaa käynnissä olevan työn.
- Pakkaus voi olla purkki, sota tai pom projektista riippuen. Projektissamme valitsemme purkin. Anna sitten projektisi nimi.
- Kun olet luonut projektin, näet Maven-projektisi projektirakenteen. Täällä voit nähdä seuraavat asiat -
- pom.xml
- src ja kohde
- src / main / java
- src / test / java
- Maven-riippuvuudet
- Luo nyt luokkatiedosto hakemistoon src / main / test ja nimeä se DemoClassiksi. Tämä luokka sisältää seleenikoodin, jota käytämme testauksessa. Nyt olemme lisänneet Selenium-, TestNG-riippuvuudet ja Maven-kääntäjän sekä Surefire-laajennuksen pom.xml-tiedostoon. DemoClass- ja pom.xml-koodi on annettu alla:
package maven.selenium.testng import org.openqa.selenium.WebDriver import org.openqa.selenium.chrome.ChromeDriver import org.testng.annotations.Test public class DemoClass {@Test public void test () heittää InterruptedException {// ilmoitus ja esineiden / muuttujien ilmentäminen //System.setProperty('webdriver.gecko.driver','/home/edureka/Downloads/geckodriver ') // WebDriver-ohjain = uusi FirefoxDriver () // kommentoi yllä olevia 2 riviä ja poista kommentit alle 2 rivit käyttämään Chrome System.setProperty ('webdriver.chrome.driver', 'C: UsersArvind PhulareDesktopchromedriver.exe') WebDriver-ohjain = uusi ChromeDriver () String baseUrl = 'http://newtours.demoaut.com/' String odotettavissaTitle = 'Tervetuloa: Mercury Tours' String actualTitle = '' // käynnistää Fire foxin ja ohjaa sen Base URL -ohjaimeen.get (baseUrl) // hanki otsikon todellinen arvo actualTitle = driver.getTitle () Thread.sleep (3000 ) / * * vertaa sivun todellista otsikkoa odotettuun ja tulosta * tulos 'Hyväksytty' tai 'Epäonnistunut' * / jos (actualTitle.contentEquals (odotettuTitle)) {System.out.println ('Test hyväksytty!')} else {System.out.println ('Test Failed')} // sulje Fire fox -ajuri.close ()}}
4.0.0 maven.selenium maven.selenium.testng 0.0.1-SNAPSHOT EdurekaDemo 2.53.1 6.9.10 org.apache.maven.plugins maven-compiler-plugin 1.8 1.8 org.apache.maven.plugins maven-surefire-plugin 2.18 .1 testng.xml org.seleniumhq.selenium seleeni-java 3.141.59 org.testng testng 6.14.3 testi
Ennen projektin suorittamista meidän on muunnettava luokkatiedosto DemoClass TestNG-tiedostoksi. Tee näin napsauttamalla hiiren kakkospainikkeella kohtaa DemoClass -> TestNG -> Muunna TestNG.
Nyt voit suorittaa projektin napsauttamalla hiiren kakkospainikkeella projektia -> Suorita nimellä -> Maven clean. Tämä tyhjentää projektin poistamalla kaikki aiemmat koontiversiot.
Kun Maven on puhdistettu, sinun on testattava projekti, koska olemme kirjoittaneet koodin verkkosovelluksen testaamiseen. Joten napsauta hiiren kakkospainikkeella projektia -> Suorita nimellä -> Maven-testi. Tämä avaa verkkosivuston ja vastaa verkkosivuston otsikkoa. Jos se täsmää, testitapauksemme läpäisee.
Voimme myös suorittaa yllä olevat komennot komentokehotteella. Tätä varten tarvitsemme pom.xml-tiedoston polun.
- Saat polun napsauttamalla hiiren kakkospainikkeella pom.xml-tiedostoa -> Ominaisuudet -> Sijainti.
- Kopioi polku, avaa sitten komentokehote ja liitä se CD-levyllä. cd C: / Käyttäjät / Arvind Phulare / eclipse-työtila / maven.selenium.testng.
- Kun olet tehnyt tämän, voit kirjoittaa uudelleen Maven-komennot, kuten mvn clean ja mvn test.
Joten tämä on minun puoleltani tässä blogissa Maven-opetusohjelmassa. Toivon, että olet ymmärtänyt asiat, joista olemme keskustelleet tässä Maven-oppaassa.
Nyt kun olet ymmärtänyt tämän Maven-opetusohjelman, tarkista tämä Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Edureka DevOps -sertifiointikoulutus auttaa oppijoita ymmärtämään, mikä DevOps on, ja hankkimaan asiantuntemusta erilaisista DevOps-prosesseista ja työkaluista, kuten Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack ja GIT SDLC: n useiden vaiheiden automatisoimiseksi.
Onko sinulla kysymys meille? Mainitse se tämän Maven-opetusohjelman kommenttiosassa ja palaamme sinuun