Maveni määratlus
Apache Maven on projektihaldus- ja mõistmistööriist, mis suudab hallata projekti elutsükli erinevaid aspekte, näiteks ehitamine, aruandlus ja esmasel teabeallikal põhinev dokumentatsioon. Varem oli igal projektil oma ehitamisfailid, mis tuli standardiseerida millekski, mis võiks projektid üles ehitada, projektid selgelt määratleda, hõlbustada projekti avaldamist ja JAR-ide jagamist. See probleem viis tööriista loomiseni, mida saaks kasutada kõigi Java-s töötavate projektide ehitamiseks ja haldamiseks. See areng lihtsustas Java arendajate igapäevaseid tegevusi.
Mis on Maven?
Maven tähendab teadmiste akumulaatorit. See on jidiši sõna, mis jõudis esmakordselt sündmuskohale Jakarta Turbiini projekti ajal, kus prooviti ehitamise protsessi lihtsustada.
Maveni mõistmine
Maven on projekti loomise tööriist, mis kuulub Apache'i litsentsi alla, ja Maveni hoidlas on saadaval terveid raamatukogude hoste.
Projektis on õigete JAR-failide hankimine keeruline ülesanne, kus kahe eraldi paketi versioonides võivad esineda konfliktid. Siiski hoolitseb selle eest, et kõik JAR-failid oleksid selle hoidlates ja väldiksid selliseid vastuolulisi stsenaariume.
Nende JAR-failide saamiseks Mavenilt peame külastama Maveni hoidlat ja otsima täpsed sõltuvused, näiteks kevadine sõltuvus, talveune sõltuvus jne.
Projekti mõistmine on selles kõige olulisem nõue. Maveni projekti puhul on äärmiselt oluline fail pom.xml. Nüüd, sõltuvuste põhjal, peate selles pom.xml-failis nimetama täpset nime. Näiteks kui vajate hibernate sõltuvusi, peate selle määratlema sõltuvussiltide all.
Pärast projekti saabub GroupId. Nüüd ehitavad erinevad ettevõtted või inimesed erinevaid projekte, mis rõhutavad iga projekti kordumatuse tagamise probleemi. Seega saaks selle ainulaadsuse probleemi lahendada, kasutades ainulaadset ArtifactId või GroupId, mis eristab ühte projekti teisest. Selleks ühendatakse projekti nime tähistav ArtifactId paketi kirjeldava GroupId-ga. Oletame näiteks, et GroupId-d nimetatakse com.telus ja ArtifactId-d Proj-ks, siis oleks paketi nimi com.telus.proj.web. Need asjad lihtsustaksid Maveni protsessi.
Kuidas teeb Maven töötamise nii lihtsaks?
Sõltuvuste allalaadimiseks peame külastama eri tarkvara ametlikku veebisaiti, mis võib sageli olla valulik. Nüüd võiksime üksikute saitide külastamise asemel külastada mvnrepository.com, mis on JAR-failide keskne hoidla. Kui olete sattunud veebilehele, minge otsinguribale ja sisestage soovitud sõltuvus. Siin oleme otsinud kevadist MVC-d ja seejärel klõpsake nuppu Otsi.
Nüüd klõpsake esimest linki - Spring Web MVC.
Klõpsake uusimat väljaannet ja kopeerige pom-fail ning nii on teil vajalik JAR-fail.
Sellel on nii pult kui ka kohalik hoidla. JAR-failid laaditakse alla kaughoidlast, kuid meie süsteemi kohalikust hoidlast otsitakse kõigepealt mõni sõltuvus ja ebaõnnestunud otsing paneb selle otsima kaughoidlasse. See suurendab jõudlust, kuna järgmine kord võib sõltuvust leida ainult kohalikust hoidlast.
Top Maven ettevõtted
Maven on nüüd integreeritud paljudesse rahvusvahelistesse ettevõtetesse, kes soovivad projekti väljatöötamise protsessi lihtsustada, kasutades ühist raamistikku, mis koosneb kõigist vajalikest sõltuvustest ja pistikprogrammidest, mis on vajalikud projekti konkreetseks ehitamiseks. Allpool on toodud mõned populaarseimad ettevõtted kogu maailmas, kes kasutavad seda oma töövoogudes.
- JP Morgan Chase: - See on üks suurimaid investeerimispanganduse ettevõtteid, kes kasutab Mavenit vähestes oma suurandmete arendusprojektides.
- Edaptive Computing Inc. :- ECI on üks automatiseerimise, optimeerimise ja keerukate süsteemilahenduste valdkonnas liidreid, mis tegeleb terve hulga avaliku ja erasektori klientidega. See töötab erinevate Java projektidega, mis vajavad selle mõistmist.
- Red Hat Inc. :- See on Ameerika tarkvaraettevõte, mis loob kogukonnale avatud lähtekoodiga tarkvara. Red Hat kasutab Mavenit erinevalt.
- Üks 97 Communications Ltd: - see on India mobiilse Interneti-ettevõte, mis tegeleb hotellide broneerimise, pakkumiste, muusika, videomängude ja palju muuga.
- Agilysys Inc. :- See pakub tarkvara analüütikute, mobiililahenduste, dokumendihalduse ja muu sellise jaoks.
Maveni erinevad alamhulgad
- Maveni mõistmine algab ehitustööriistast. Kasutatavaid artefakte saab luua lähtekoodist ja serverites kasutusele võtta. Lisaks sellele võiks ehitamine olla automatiseeritud või korratav ning see pole integreeritud arenduskeskkonnast sõltumatu ja seda saab integreerida ka muude tööriistadega.
- Teine alamhulk on sõltuvushaldus, mis aitab pluginate ja projektis vajalike sõltuvuste korraldamisel ja hooldamisel. On olemas tsentraliseeritud repositoorium, kust saab projekti sõltuvusi alla laadida ja lahendada probleemid, mis sageli tekivad projektis piisavate raamatukogude nappuse tõttu. Mõnikord ei pruugi ühel juhul kasutatud sõltuvust kasutada teisel juhul. Seega kohaldataks sõltuvuse ulatuse täpsustamisel tingimusi, millal seda kasutada ja millal mitte.
- Maveni kolmas alamhulk on projektijuhtimine, mis koosneb vaid pom-failist, mis koosneb meie projekti vajalikest üksikasjadest. Samuti võiksime kataloogida mõne olulise teabe, näiteks projekti versiooni, arendajate nime, veebisaidi jne. Koodi eri versioonide erinevus võimaldab luua muudatuste logisid. Samuti on võimalus meie väljatöötamisel olev tarkvara õigesti dokumenteerida. Koodi idee saamiseks võiksime luua Java-dokumente ja genereerida aruande projekti kohta teabe saamiseks ning puuduvate ülesannete lahendamiseks.
- See säilitab järjepidevuse ja ühtsuse mitme projekti vahel, mis tagab tõhususe ja säilitab kõigi projektide standardiseeritud kataloogistruktuuri. See aitab Mavenil mõista erinevate asjade asukohti, kuna see sunnib erinevalt ANT-st hoidma kogu lähtekoodi konkreetses kataloogis. See säilitab sünkroonimise kõigis projekti teedes. Seega järgib enamik maven-projekte sama mustrit, mis teeb sellest nii võimsa tööriista kasutamiseks.
Koostöö Maveniga
Sellel on nii palju komponente, mis aitavad meie projektides üksteisega suheldes ehitada. Alguses sisestatakse käsk - mvn install käsurealt.
Installikäsk uurib faili pom.xml, et mõista projekti ja teostatava ehituse nõudeid. Andmete osad, mida see loeb, on teave projekti kohta, see on ruum, kus leiame võimaluse otsida Artefakti, mis luuakse koos ehitamisega.
Vaadataks ka sõltuvusi ja pistikprogramme. Pistikprogramme on vaja artefakti loomiseks, kuna need on toimingud koodi vastu, sõltuvused on aga projekti jaoks vajalikud teegid.
Maveni sõltuvushaldur aitab pluginaid või sõltuvusi üles leida. See töötab nii, et sõltuvushaldur uuriks pom-faili, kus on loetletud sõltuvused ja pistikprogrammid, ning siis jõuaks see üksikute hoidlate juurde. Esiteks otsiks sõltuvushaldur kohalikku ja kui seda ei leita, siis uurib ta kaugemaid hoidlaid nagu Maveni keskne hoidla, Nexuse hoidla jne, kus asuvad Artefaktide leidmise asukohad.
Projekti elutsükkel algab siis, kui pistikprogrammid ja sõltuvused on saadaval. Faasid hõlmavad - kompileerimine, testimine ja installimine. Kõik etapid täidetakse koos sellega seotud pistikprogrammidega.
Maveni eelised
- Kergendab mis tahes projekti ehitust.
- See säilitab kogu ehitamisprotsessi ühtluse.
- On väga oluline mõista projekti, mille kallal me töötame. See pakub põhjalikku teavet projekti kohta.
- Projekti kvaliteedi tagamiseks on vaja seda parimal võimalikul moel välja töötada ja see annab juhised just selle saavutamiseks.
- Sageli tuleb projektis üle minna uutele funktsioonidele ja Maveni abil on migratsioon lihtsustatud.
Miks peaksime Mavenit kasutama?
- See on ehitustööriist, mis võimaldab genereerida raamatukogusid nagu jar-fail, kuid kood pakitakse levitatavasse raamatukokku.
- Kuna tegemist on sõltuvusehalduse tööriistaga, muutub sõltuvuste saamine ja haldamine sõltuvalt sellest, kuidas me nendega üldiselt toime tuleme.
- Teine Maveni omadus on projektijuhtimise funktsionaalsus, mis on teiste projektijuhtimise tööriistadega võrreldes kõige tugevam. Tarkvara teave, näiteks nimi või versiooninumber, võidakse lisada kui Maven. Seega võiks sellest saada projekti üldise ülevaate.
- Nagu varem arutatud, erinevalt teistes valdkondades tehtavatest tarkvaradest on selles tarkvara loomine standardiseeritud. Mavenis hoitakse iga projekti järjepidevust, mis suurendab tõhusust.
- Kuna see on käsureatööriist, tuleb kõik selles olevad juhised käsuviibu kaudu edasi anda ja see täidaks projekti ehitamiseks ülesannete komplekti. Lisaks saaks mitmeid IDE-sid, näiteks Eclipse, kasutada ka Maveni kasutavate rakenduste ehitamiseks.
Maven ulatus
- Apache Mavenil on tänapäeva ettevõtlusmaailmas tohutu ulatus. Allpool toodud statistika näitab, et peale ülejäänud viie tuhande jälgitava toote moodustab see projektiportfellihalduses 4, 2 protsenti.
- Tööstuse kasutuse osas on see samuti väga populaarne. Arvutitarkvara tööstuses on kõige rohkem kasutusel Apache Maven, kahekümne seitsme protsendiga, millele järgneb infotehnoloogia kuue protsendi ja värbamisega viis protsenti.
- Apache Mavenit kasutavate riikide osas juhib võistlust Ameerika Ühendriigid vastavalt kuuekümne seitsme protsendiga, järgnevad India kuue protsendi, Suurbritannia kuue protsendi ja Kanada viie protsendiga.
- Töötajate suurusest lähtuvalt leiab Apache Maven õiglase osa kasutamisest suurtes ettevõtetes, kus töötajate arv on üle tuhande, samas kui keskmise suurusega ettevõtetel on kolmkümmend üks protsenti ja väikestel ettevõtetel, kellel on seitseteist protsenti.
- Apache Mavenit kasutava ettevõtte tulude osas on nelikümmend üheksa protsendi müügitulu enam kui 1000 miljonit dollarit.
Miks me vajame Mavenit?
Uute projektide jaoks on vaja kolmandate osapoolte raamatukogudega koostööd. Näiteks projekt, mis kasutab MYSQL-i koos JAVA-ga, nõuab MySQL-pistik-java-jar-faili. Lisaks nõuab kevadise MVC-ga töötamine arvukalt sõltuvusi. Kõik need raamid nõuavad kõigi tüütute ja aeganõudvate sõltuvuste ise allalaadimist. Lisaks oleks värskeimale versioonile värskendamise korral väljakutse, kus peame jällegi hoidlaid külastama ja kõik need sõltuvused alla laadima. See lahendab selle probleemi, kuna saab projekti jaoks vajalikud JAR-failid ja väldib konflikte.
Kes on Maven-tehnoloogia õppimiseks õige publik?
Apache Maven lihtsustab projekti väljatöötamise protsessi, pakkudes standardiseeritud viisi projekti arendamiseks ja hooldamiseks. Seega on selle vajalikkus hajutatud kõigisse valdkondadesse ning nagu varem näidatud - töötajad arvutitarkvarast infotehnoloogiani, vajavad kõik Mavenit oma töös.
Kuidas see tehnoloogia aitab teid karjääri kasvamisel?
Nagu sellest artiklist näha, kasutatakse Apache Mavenit Javaga seotud projektides. Kuna Java kasutatakse kogu maailmas, suurendab see Maveni tähtsust ja seetõttu otsib enamik ettevõtteid tänapäeval Maveni kogemusi, et palgata keegi Java arenduse rolli. Hiljutine LinkedIni otsing andis kogu maailmas Apache Maveni oskuste nõude jaoks ilmatu kahekümne kolmesaja tulemuse. Rohkem töökohti võib leida -
https://www.linkedin.com/jobs/search/
Järeldus
Kui olete veebiarendaja või Java-arendaja, on peaaegu kindel, et vajate seda oma projektis sagedamini kui mitte. Võttes arvesse praegust nõudlust Maveni järele, on vaja ka tehnoloogia alahindamist, et see oleks turul asjakohane, ja ka selleks, et teha paremini standardiseeritud projekt.
Soovitatavad artiklid
See on olnud juhend teemal Mis on Maven ja siin oleme arutanud Maveni, parima maveni ettevõtete põhikontseptsiooni ja eeliseid. Lisateabe saamiseks võite vaadata ka järgmisi artikleid
- Maveni intervjuu küsimused koos vastustega
- Jenkins vs Maven
- Apache'i intervjuu küsimused
- Kuidas installida Maven?