Mavenas apmācība: viss, kas jums jāzina, lai sāktu darbu



Šis emuārs Maven apmācībā ietver visu, kas jums jāzina, lai sāktu darbu ar Maven, lai izveidotu savus projektus.

Tā vietā, lai rakstītu garus skriptus savu projektu veidošanai un manuāli lejupielādētu atkarības, kāpēc neizmantot Maven un atbrīvoties no šī jucekļa. Šis emuārs par Maven apmācību aptvers visu nepieciešamo, lai sāktu darbu ar Maven izmantošanu savam projektam. Pēc pilnīgas izpratnes par šo Maven apmācību nākamais iespējamais solis būs iemācīties Jenkins, kas aptver nepārtrauktas integrācijas fāzi .

Šajā Mavenas apmācības emuārā mēs aplūkosim šādas tēmas:

  1. Kāpēc mums vajadzīgs Maven?
  2. Kas ir Maven?
  3. Mavenas arhitektūra
  4. Maven dzīves cikls, fāzes un mērķi
  5. Demonstrācijas projekts.

Kāpēc mums vajadzīgs Maven?

Ja strādājat ar Java projektiem, lielākoties jums ir nepieciešamas atkarības. Atkarības nav nekas cits kā bibliotēkas vai JAR faili. Jums tās jālejupielādē un jāpievieno manuāli. Arī uzdevums par programmatūras kaudzes jaunināšanu jūsu projektam tika veikts manuāli pirms Maven. Tāpēc bija nepieciešams labāks veidošanas rīks, kas risinātu šādus jautājumus.





Tas, kur Maven nonāk attēlā. Maven var atrisināt visas jūsu problēmas, kas saistītas ar atkarībām. Jums vienkārši jānorāda atkarības un programmatūras versija, kuru vēlaties pom.xml failā Mavenā, un Maven parūpēsies par pārējo.Tāpēc tagad mēģināsim saprast, kas tieši ir Maven.

Kas ir Maven?

Maven projektu izstrādāja Apache Software Foundation, kur tas agrāk bija daļa no Džakartas projekta. Maven ir spēcīgs automatizācijas rīks, ko galvenokārt izmanto Java balstītiem projektiem. Maven palīdz jums risināt divus kritiskos programmatūras veidošanas aspektus -



atrast maksimālo skaitu masīva java
  • Tajā aprakstīts, kā tiek veidota programmatūra
  • Tajā aprakstītas atkarības.

Maven dod priekšroku konvencijai, nevis konfigurācijai. Maven dinamiski lejupielādē Java bibliotēkas un Maven spraudņus no viena vai vairākiem krātuvēm, piemēram, Maven Central Repository, un glabā tos vietējā kešatmiņā. Ar šo vietējo kešatmiņu var atjaunināt arī vietējo projektu artefaktus. Maven var arī palīdzēt jums izveidot un pārvaldīt projektus, kas rakstīti C #, Ruby, Scala un citās valodās.

Projekta objekta modeļa (POM) fails ir XML fails, kas satur informāciju, kas saistīta ar projektu, un konfigurācijas informāciju, piemēram, atkarības, avota direktoriju, spraudni, mērķus utt., Ko Maven izmantoja, lai izveidotu projektu. Izpildot maven komandu, jūs dodat maven POM failu komandu izpildei. Maven nolasa failu pom.xml, lai veiktu tā konfigurāciju un darbības.

Maven mērķi

Maven mērķi

Kad kādam vajadzētu lietot Maven?

    1. Ja projektam ir pārāk daudz atkarību.
    2. Kad atkarības versija tiek bieži atjaunināta.
    3. Nepārtrauktu būvēšanu, integrēšanu un testēšanu var viegli apstrādāt, izmantojot maven.
    4. Kad nepieciešams vienkāršs veids, kā ģenerēt dokumentāciju no pirmkoda, avota koda apkopošana, apkopotā koda iesaiņošana JAR failos vai ZIP failos.

Mavenas arhitektūra

Maven dzīves cikls, fāzes un mērķi

1. Maven dzīves cikls



Ir noteikts dzīves cikls, kuru Maven ievēro, lai izvietotu un izplatītu mērķa projektu.

Ir trīs iebūvēti dzīves cikli:

  • noklusējums - Šis ir galvenais Maven dzīves cikls, jo tas ir atbildīgs par projekta ieviešanu.
  • tīrs - Šis dzīves cikls tiek izmantots, lai notīrītu projektu un noņemtu visus failus, kurus ģenerēja iepriekšējā būvēšana.
  • vietne - Šī dzīves cikla mērķis ir izveidot projekta dokumentāciju.

Katru dzīves ciklu veido fāžu secība. Noklusējuma būvēšanas dzīves cikls sastāv no 23 fāzēm, jo ​​tas ir galvenais Maven būvēšanas dzīves cikls

No otras puses, tīrs dzīves cikls sastāv no 3 fāzēm, savukārt vietas dzīves cikls sastāv no 4 fāzēm.

2. Maven fāzes

Maven fāze ir nekas cits kā Maven būvēšanas dzīves cikla posms. Katrā fāzē tiek izpildīts noteikts uzdevums.

Šeit ir daži svarīgi noklusējuma dzīves cikla posmi -

  • apstiprināt - Šajā fāzē tiek pārbaudīts, vai ir pieejama visa būvēšanai nepieciešamā informācija
  • sastādīt - Šis posms apkopo pirmkodu
  • testēt-apkopot - Šis posms apkopo testa avota kodu
  • pārbaude - Šajā posmā tiek veikti vienības testi
  • iepakojums - Šī fāze apkopo avota kodu izplatāmajā formātā (burka, karš)
  • integrācijas tests - Šajā posmā pakete tiek apstrādāta un izvietota, ja nepieciešams, lai palaistu integrācijas testus
  • uzstādīt - Šajā fāzē pakotne tiek instalēta vietējā repozitorijā
  • izvietot - Šajā posmā pakete tiek kopēta uz attālo repozitoriju

Maven veic fāzes noteiktā secībā. Tas nozīmē, ka, ja mēs izpildām noteiktu fāzi, izmantojot komandu, piemēram, mvn, tas izpildīs ne tikai norādīto fāzi, bet arī visas iepriekšējās fāzes.

Piemēram, ja palaižat komandu mvn izvietot, tas ir, izvietošanas fāze, kas ir pēdējā noklusējuma būvēšanas dzīves cikla fāze, tā izpildīs arī visas fāzes pirms izvietošanas fāzes.

3. Maven Goals

Mērķu secība veido fāzi, un katrs mērķis izpilda noteiktu uzdevumu. Kad jūs izpildāt fāzi, tad Maven izpilda visus mērķus secībā, kas ir saistīta ar šo fāzi. Izmantotā sintakse ir spraudnis: mērķis. Daži no posmiem un tiem piesaistītie noklusējuma mērķi ir šādi:

  • kompilators: kompilēt - sastādīt fāzi
  • kompilators: tests - test-compile fāze
  • surefire: tests - testa fāze
  • instalēt: instalēt - instalēt fāzi
  • burka un karš: karš - paketes posms

Maven spraudnis ir mērķu grupa. Tomēr šie mērķi ne vienmēr ir saistīti ar vienu un to pašu fāzi.Piemēram, spraudnis Maven Failsafe, kas ir atbildīgs par integrācijas testu izpildi. Lai pārbaudītu vienību, nepieciešams Maven surefire spraudnis.

Demonstrācijas projekts

Šajā sadaļā Maven apmācība, mēs apskatīsim demonstrācijas projektu. Lai parādītu, kā izveidot projektu, izmantojot Maven, esmu izveidojis Java projekts kopā ar TestNG, izmantojot Eclipse IDE. Šī ir ļoti vienkārša programma, kurā esmu uzrakstījis kodu, lai pārbaudītu vietnes nosaukumu.

Programma automātiski palaidīs tīmekļa pārlūkprogrammu, virzīsies uz kodā minēto vietni, ielādēs šīs tīmekļa lapas nosaukumu un salīdzinās to ar paredzamo nosaukumu. Ja faktiskais nosaukums un paredzamais tituls sakrīt, tad pārbaudes gadījums iztur citu, tas neizdodas.

Tātad šim projektam jums ir nepieciešams , Maven un Eclipse lejupielādēti jūsu sistēmā. Versijas, kuras izmantoju savā sistēmā, ir šādas -

  1. Aptumsums - Enterprise Edition versija 4.12.0 (2019-06)
  2. Java - versija 1.8.0_211
  3. Maven - versija 3.6.1
  • Bez tam, jums ir jālejupielādē TestNG spraudnis Eclipse un varat to lejupielādēt, veicot šādas darbības:
    • Atveriet Eclipse un dodieties uz Palīdzība. Palīdzībā noklikšķiniet uz Eclipse tirgus.
    • Lodziņā Atrast ierakstiet TestNG un noklikšķiniet uz Sākt. Rezultātos redzēsit “TestNG for Eclipse”. Jums tas ir jālejupielādē.
  • Pēc tam, kad esat iestatījis sistēmu ar iepriekšminētajām lietām, jūs visi esat gatavs izveidot demonstrācijas projektu, izmantojot Maven. Tāpēc tagad es jums pastāstīšu visus nepieciešamos soļus, lai to izdarītu.
    • Programmā Eclipse noklikšķiniet uz File -> New -> Maven Project.
    • Noklikšķiniet uz Izveidot vienkāršu projektu (izlaist arhetipa izvēli) un pēc tam noklikšķiniet uz nākamā.
  • Tagad jūs redzēsiet logu ar tādiem parametriem kā grupas ID, artefakta ID un tā tālāk.
    • Grupas ID ir grupas, kurai pieder projekts, unikālais ID.
    • Artefact Id ir galīgās kompilācijas vienības nosaukums.
    • Versija ir izveidotā artefakta versija. SNAPSHOT norāda uz nepabeigtu darbu.
    • Iepakojums var būt burka, karš vai pom, atkarībā no jūsu projekta. Savam projektam mēs atlasīsim burku. Tad norādiet sava projekta nosaukumu.

  • Kad esat izveidojis projektu, jūs redzēsiet sava Maven projekta projekta struktūru. Šeit jūs varat redzēt šādas lietas -
    • pom.xml
    • src un mērķis
    • src / main / java
    • src / test / java
    • Mavenas atkarības
  • Tagad izveidojiet klases failu src / main / test un nosauciet to DemoClass. Šajā klasē ir selēna kods, kuru mēs izmantojam testēšanai. Tagad failam pom.xml esam pievienojuši Selenium, TestNG atkarības un Maven kompilatoru un Surefire spraudni. DemoClass un pom.xml kods ir norādīts zemāk:
pakete 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 () throws InterruptedException {//eklarācija un objektu / mainīgo izpausme //System.setProperty('webdriver.gecko.driver','/home/edureka/Downloads/geckodriver ') // WebDriver draiveris = jauns FirefoxDriver () // komentējiet iepriekš minētās 2 rindas un komentējiet zem 2 līnijas, lai izmantotu Chrome System.setProperty ('webdriver.chrome.driver', 'C: UsersArvind PhulareDesktopchromedriver.exe') WebDriver draiveris = jauns ChromeDriver () String baseUrl = 'http://newtours.demoaut.com/' String expectedTitle = 'Laipni lūdzam: Mercury Tours' String actualTitle = '' // palaiž Fire Fox un novirza to uz bāzes URL draiveri.get (baseUrl) // iegūst virsraksta faktisko vērtību actualTitle = driver.getTitle () Thread.sleep (3000 ) / * * salīdziniet lapas faktisko virsrakstu ar gaidīto un izdrukājiet * rezultātu kā “Nokārtots” vai “Neizdevies” * / if (actualTitle.contentEquals (expectedTitle)) {System.out.println ('Pārbaude nokārtota!')} else {System.out.println ('Pārbaude neizdevās')} // aizveriet Firefox draiveri.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.selēna selēns-java 3.141.59 org.testng testng 6.14.3 tests
  • Pirms projekta izpildes mums jāpārvērš klases fails DemoClass par TestNG failu. Lai to izdarītu, ar peles labo pogu noklikšķiniet uz DemoClass -> TestNG -> Convert to TestNG.

  • Tagad, lai palaistu projektu, ar peles labo pogu noklikšķiniet uz projekta -> Run as -> Maven clean. Tas notīrīs projektu, noņemot visus iepriekšējos būvējumus.

  • Pēc Maven tīrīšanas jums ir jāpārbauda projekts, jo mēs esam uzrakstījuši tīmekļa lietojumprogrammas testēšanas kodu. Tātad ar peles labo pogu noklikšķiniet uz projekta -> Palaist kā -> Maven tests. Tas atvērs vietni un sakritīs ar vietnes nosaukumu. Ja tas sakrīt, mūsu pārbaudes gadījums izturēs.

  • Iepriekš minētās komandas mēs varam arī izpildīt, izmantojot komandu uzvedni. Lai to izdarītu, mums ir nepieciešams faila pom.xml ceļš.

    • Ceļu var iegūt, ar peles labo pogu noklikšķinot uz faila pom.xml -> Properties -> Location.
    • Nokopējiet ceļu, pēc tam atveriet komandu uzvedni un ielīmējiet to tur, izmantojot kompaktdisku. cd C: / Users / Arvind Phulare / eclipse-workspace / maven.selenium.testng.
    • Kad esat to izdarījis, varat atkal ierakstīt tādas Maven komandas kā mvn clean un mvn test.

Tātad tas ir no manas puses šajā emuāra Maven apmācībā. Es ceru, ka jūs esat sapratis lietas, kuras mēs esam apsprieduši šajā Maven apmācībā.

Tagad, kad esat sapratis šo Maven apmācību, pārbaudiet to Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Edureka DevOps sertifikācijas apmācības kurss palīdz izglītojamajiem saprast, kas ir DevOps, un iegūt zināšanas dažādos DevOps procesos un rīkos, piemēram, Leļļu, Jenkins, Nagios, Ansible, Chef, Saltstack un GIT vairāku soļu automatizēšanai SDLC.

Vai mums ir jautājums? Lūdzu, pieminējiet to šīs Maven apmācības komentāru sadaļā, un mēs ar jums sazināsimies