Drevo odvisnosti MVN

Drevo Odvisnosti Mvn



»Odvisnosti so zunanje kode in izrezki, uvoženi v vaš projekt za zagotavljanje dodatne funkcionalnosti. Na primer, odvisnost je lahko drug arhiv ali datoteka v Java Projects. Drugi deli projekta se nato sklicujejo na odvisnost, ki jo je treba izvesti.

Imeti jasno sliko drevesa odvisnosti za vaš projekt je lahko koristno. Omogoča hitro iskanje konfliktov med nameščenimi paketi in njihovo učinkovito reševanje.







V tej vadnici se bomo naučili, kako si ogledati drevo odvisnosti projekta Maven.”



Začnimo.



Maven Dependency Plugin

Pripomoček Apache Maven ima orodje, ki vam omogoča upravljanje odvisnosti. Maven Dependency Plugin vam bo omogočil zagon preprostega ukaza v vašem projektu in vizualizacijo vseh njegovih odvisnosti.





Vir vtičnika je prikazan spodaj:

https://maven.apache.org/plugins/maven-dependency-plugin/usage.html



Najboljši način za vizualizacijo drevesa odvisnosti vašega projekta s tem vtičnikom je zagon naslednjega ukaza:

mvn odvisnost : drevo

Prejšnji ukaz bo našel vse odvisnosti v vašem projektu in vrnil drevesno strukturo.

Naj ponazorimo, kako lahko to dosežemo.

Za to lahko uporabite kateri koli projekt Maven s poljubnimi zahtevanimi odvisnostmi.

Ko zaženete zgornji ukaz, bi morali videti naslednji primer izhoda:

[ INFO ] --- maven - odvisnost - vključiti : 2.8 : drevo ( privzeto - cli ) @ jedis ---
[ INFO ] redis. stranke : jedi : kozarec : 4.3.0 - POSNETEK
[ INFO ] +- org. slf4j : slf4j - api : kozarec : 1.7.32 : sestaviti
[ INFO ] +- org. apache . skupno : skupno - bazen2 : kozarec : 2.11.1 : sestaviti
[ INFO ] +- org. json : json : kozarec : 20211205 : sestaviti
[ INFO ] +- z. google . Koda . gson : gson : kozarec : 2.8.9 : sestaviti
[ INFO ] +- junit : junit : kozarec : 4.13.2 : test
[ INFO ] | \ - org. hamcrest : hamcrest - jedro : kozarec : 1.3 : test
[ INFO ] +- org. slf4j : slf4j - preprosto : kozarec : 1.7.32 : test
[ INFO ] +- z. kohlschutter . vtičnica junix : vtičnica junix - jedro : glej : 2.4.0 : test
[ INFO ] | +- z. kohlschutter . vtičnica junix : vtičnica junix - domačin - običajni : kozarec : 2.4.0 : test
[ INFO ] | \ - z. kohlschutter . vtičnica junix : vtičnica junix - običajni : kozarec : 2.4.0 : test
[ INFO ] \ - org. mockito : mockito - v vrsti : kozarec : 3.12.4 : test
[ INFO ] \ - org. mockito : mockito - jedro : kozarec : 3.12.4 : test
[ INFO ] +- mreža. bytebuddy : bajt - prijatelj : kozarec : 1.11.13 : test
[ INFO ] +- mreža. bytebuddy : bajt - prijatelj - agent : kozarec : 1.11.13 : test
[ INFO ] \ - org. dogovorjeno : dogovorjeno : kozarec : 3.2 : test

Kot lahko vidite iz zgornjega rezultata, Maven vrne vse odvisnosti našega projekta v obliki seznama.

Dobro je upoštevati, da ta ukaz zahteva, da imate v sistemu nameščen Maven in Java JDK.

Filtriranje odvisnosti

Če delate na velikem projektu, boste morda težko videli in upravljali vse odvisnosti z zgornjim ukazom.

Na srečo vam vtičnik drevesa odvisnosti Maven omogoča filtriranje prikazanih odvisnosti. To pomeni, da lahko vključite ali izključite katero koli odvisnost, ki jo želite.

Če želite vključiti samo določeno odvisnost, uporabimo možnost Dincludes, kot je prikazano v naslednji sintaksi:

mvn odvisnost : drevo - Ne vključuje [ groupId ] : [ artefactId ] : [ vrsta ] : [ različica ]

Upoštevajte, da je vsak segment v parametru -Dincludes neobvezen.

Na primer, da pokažemo, kako se določena odvisnost uporablja v projektu, lahko zaženemo naslednji ukaz:

mvn odvisnost : drevo - Ne vključuje = vtičnica junix : vtičnica junix - jedro

Prejšnja koda bi morala vrniti:

[ INFO ]
[ INFO ] ------------------------< redis. stranke : jedi >------------------------
[ INFO ] Gradnja Jedijev 4.3.0 - POSNETEK
[ INFO ] -------------------------------- [ kozarec ] ----------------------------------
[ INFO ]
[ INFO ] --- maven - odvisnost - vključiti : 2.8 : drevo ( privzeto - cli ) @ jedis ---

Za izključitev odvisnosti iz drevesa lahko uporabimo parameter -Dincludes, kot je prikazano v spodnji sintaksi.:

mvn odvisnost : drevo - Ne vključuje = [ groupId ] : [ artefactId ] : [ vrsta ] : [ različica ]

Na primer:

mvn odvisnost : drevo - Izključuje = vtičnica junix : vtičnica junix - jedro

To bi moralo vrniti izhod, kot je prikazano spodaj:

Maven Shrani odvisnost v datoteko

Drevo odvisnosti lahko shranite tudi v datoteko s parametrom -DoutputFile. Spodaj je prikazan primer:

mvn odvisnost : drevo - DoutputFile = 'dep.tree'

V prejšnjem ukazu Mavenu naročimo, naj ustvari drevo odvisnosti in ga shrani v datoteko z imenom dep.tree.

Končni rezultat datoteke je naveden spodaj:

+- org. slf4j : slf4j - api : kozarec : 1.7.32 : sestaviti
+- org. apache . skupno : skupno - bazen2 : kozarec : 2.11.1 : sestaviti
+- org. json : json : kozarec : 20211205 : sestaviti
+- z. google . Koda . gson : gson : kozarec : 2.8.9 : sestaviti
+- junit : junit : kozarec : 4.13.2 : test
| \ - org. hamcrest : hamcrest - jedro : kozarec : 1.3 : test
+- org. slf4j : slf4j - preprosto : kozarec : 1.7.32 : test
+- z. kohlschutter . vtičnica junix : vtičnica junix - jedro : glej : 2.4.0 : test
| +- z. kohlschutter . vtičnica junix : vtičnica junix - domačin - običajni : kozarec : 2.4.0 : test
| \ - z. kohlschutter . vtičnica junix : vtičnica junix - običajni : kozarec : 2.4.0 : test
\ - org. mockito : mockito - v vrsti : kozarec : 3.12.4 : test
\ - org. mockito : mockito - jedro : kozarec : 3.12.4 : test
+- mreža. bytebuddy : bajt - prijatelj : kozarec : 1.11.13 : test
+- mreža. bytebuddy : bajt - prijatelj - agent : kozarec : 1.11.13 : test
\ - org. dogovorjeno : dogovorjeno : kozarec : 3.2 : test

Maven bo v datoteko vključil samo odvisnosti projekta na hierarhični način.

Zaključek

Ta objava je obravnavala, kako si ogledate drevo odvisnosti Maven z uporabo vtičnika odvisnosti Maven.