MVN függőségi fa

Mvn Fuggosegi Fa



„A függőségek külső kódok és töredékek, amelyeket a projektbe importálnak, hogy extra funkciókat biztosítsanak. Például egy függőség lehet egy másik archívum vagy fájl a Java Projectsben. A projekt többi része ezután hivatkozik a futtatandó függőségre.

Hasznos lehet, ha világos képet alkot a projekt függőségi fájáról. Lehetővé teszi a telepített csomagok közötti konfliktusok gyors megtalálását és hatékony megoldását.







Ebben az oktatóanyagban megtanuljuk, hogyan tekinthetjük meg egy Maven-projekt függőségi fáját.



Kezdjük el.



Maven Dependency Plugin

Az Apache Maven segédprogramhoz tartozik egy eszköz, amely lehetővé teszi a függőségek kezelését. A Maven Dependency Plugin lehetővé teszi egy egyszerű parancs futtatását a projektben, és megjelenítheti annak összes függőségét.





A beépülő modul forrása az alábbiakban látható:

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



A projektfüggőségi fa megjelenítésének legjobb módja ezzel a beépülő modullal a következő parancs futtatása:

mvn függőség : fa

Az előző parancs megkeresi a projekt összes függőségét, és egy faszerű struktúrát ad vissza.

Mutatjuk, hogyan tudjuk ezt megvalósítani.

Ehhez bármilyen szükséges függőséggel rendelkező Maven projektet használhat.

A fenti parancs futtatása után a következő példa kimenetet kell látnia:

[ INFO ] --- maven - függőség - csatlakoztat : 2.8 : fa ( alapértelmezett - cli ) @ Jedis ---
[ INFO ] redis. ügyfelek : jedi : befőttes üveg : 4.3.0 - PILLANATKÉP
[ INFO ] +- org. slf4j : slf4j - api : befőttes üveg : 1.7.32 : összeállítani
[ INFO ] +- org. apache . közbirtokosság : közbirtokosság - medence2 : befőttes üveg : 2.11.1 : összeállítani
[ INFO ] +- org. json : json : befőttes üveg : 20211205 : összeállítani
[ INFO ] +- val vel. Google . kód . gson : gson : befőttes üveg : 2.8.9 : összeállítani
[ INFO ] +- junit : junit : befőttes üveg : 4.13.2 : teszt
[ INFO ] | \ - org. hamcrest : hamcrest - mag : befőttes üveg : 1.3 : teszt
[ INFO ] +- org. slf4j : slf4j - egyszerű : befőttes üveg : 1.7.32 : teszt
[ INFO ] +- val vel. kohlschutter . junix foglalat : junix foglalat - mag : lát : 2.4.0 : teszt
[ INFO ] | +- val vel. kohlschutter . junix foglalat : junix foglalat - anyanyelvi - gyakori : befőttes üveg : 2.4.0 : teszt
[ INFO ] | \ - val vel. kohlschutter . junix foglalat : junix foglalat - gyakori : befőttes üveg : 2.4.0 : teszt
[ INFO ] \ - org. mockito : mockito - Sorban : befőttes üveg : 3.12.4 : teszt
[ INFO ] \ - org. mockito : mockito - mag : befőttes üveg : 3.12.4 : teszt
[ INFO ] +- háló. bytebuddy : byte - haver : befőttes üveg : 1.11.13 : teszt
[ INFO ] +- háló. bytebuddy : byte - haver - ügynök : befőttes üveg : 1.11.13 : teszt
[ INFO ] \ - org. egyetért : egyetért : befőttes üveg : 3.2 : teszt

Amint a fenti kimenetből látható, a Maven a projektünk összes függőségét lista formátumban adja vissza.

Érdemes szem előtt tartani, hogy ehhez a parancshoz a Maven és a Java JDK telepítése szükséges a rendszeren.

Függőségek szűrése

Ha egy nagy projekten dolgozik, előfordulhat, hogy a fenti paranccsal nehezen tudja megtekinteni és kezelni az összes függőséget.

Szerencsére a Maven függőségi fa beépülő modulja lehetővé teszi a megjelenített függőségek szűrését. Ez azt jelenti, hogy bármilyen függőséget beilleszthet vagy kizárhat.

Ha csak egy adott függőséget akarunk belefoglalni, akkor a Dincludes opciót használjuk, ahogy az a következő szintaxisban látható:

mvn függőség : fa - Tartalmazza [ csoportazonosító ] : [ artifactId ] : [ típus ] : [ változat ]

Ne feledje, hogy az -Includes paraméterben minden szegmens nem kötelező.

Például annak bemutatásához, hogy egy adott függőséget hogyan használnak a projektben, a következő parancsot futtathatjuk:

mvn függőség : fa - Tartalmazza = junix foglalat : junix foglalat - mag

Az előző kódnak vissza kell térnie:

[ INFO ]
[ INFO ] -------------------------< redis. ügyfelek : jedi >-------------------------
[ INFO ] Jedis 4.3.0 építése - PILLANATKÉP
[ INFO ] -------------------------------- [ befőttes üveg ] ---------------------------------
[ INFO ]
[ INFO ] --- maven - függőség - csatlakoztat : 2.8 : fa ( alapértelmezett - cli ) @ Jedis ---

Ha ki akarunk zárni egy függőséget a fából, használhatjuk a -Includes paramétert az alábbi szintaxis szerint.:

mvn függőség : fa - Tartalmazza = [ csoportazonosító ] : [ artifactId ] : [ típus ] : [ változat ]

Például:

mvn függőség : fa - Kizárja = junix foglalat : junix foglalat - mag

Ennek vissza kell adnia a kimenetet az alábbiak szerint:

Maven Mentse a függőséget fájlba

A függőségi fát a -DoutputFile paraméterrel fájlba is mentheti. Az alábbiakban egy példa látható:

mvn függőség : fa - DoutputFile = 'mély.fa'

Az előző parancsban utasítottuk a Maven-t, hogy hozzon létre egy függőségi fát, és mentse el egy dep.tree nevű fájlba.

Az eredményül kapott fájlkimenet az alábbiakban látható:

+- org. slf4j : slf4j - api : befőttes üveg : 1.7.32 : összeállítani
+- org. apache . közbirtokosság : közbirtokosság - medence2 : befőttes üveg : 2.11.1 : összeállítani
+- org. json : json : befőttes üveg : 20211205 : összeállítani
+- val vel. Google . kód . gson : gson : befőttes üveg : 2.8.9 : összeállítani
+- junit : junit : befőttes üveg : 4.13.2 : teszt
| \ - org. hamcrest : hamcrest - mag : befőttes üveg : 1.3 : teszt
+- org. slf4j : slf4j - egyszerű : befőttes üveg : 1.7.32 : teszt
+- val vel. kohlschutter . junix foglalat : junix foglalat - mag : lát : 2.4.0 : teszt
| +- val vel. kohlschutter . junix foglalat : junix foglalat - anyanyelvi - gyakori : befőttes üveg : 2.4.0 : teszt
| \ - val vel. kohlschutter . junix foglalat : junix foglalat - gyakori : befőttes üveg : 2.4.0 : teszt
\ - org. mockito : mockito - Sorban : befőttes üveg : 3.12.4 : teszt
\ - org. mockito : mockito - mag : befőttes üveg : 3.12.4 : teszt
+- háló. bytebuddy : byte - haver : befőttes üveg : 1.11.13 : teszt
+- háló. bytebuddy : byte - haver - ügynök : befőttes üveg : 1.11.13 : teszt
\ - org. egyetért : egyetért : befőttes üveg : 3.2 : teszt

A Maven csak hierarchikusan tartalmazza a projektfüggőségeket a fájlban.

Következtetés

Ez a bejegyzés bemutatta, hogyan tekintheti meg a Maven függőségi fát a Maven függőségi beépülő modul használatával.