Árbol de dependencias de MVN

Arbol De Dependencias De Mvn



“Las dependencias son códigos externos y fragmentos importados a su proyecto para proporcionar una funcionalidad adicional. Por ejemplo, una dependencia podría ser otro archivo o archivo en Proyectos Java. Otras partes del proyecto luego hacen referencia a la dependencia para ejecutar.

Tener una imagen clara del árbol de dependencias de su proyecto puede ser beneficioso. Permite encontrar rápidamente conflictos entre paquetes instalados y resolverlos de manera eficiente.







En este tutorial, aprenderemos a ver el árbol de dependencias de un proyecto Maven”.



Empecemos.



Complemento de dependencia de Maven

La utilidad Apache Maven viene con una herramienta que le permite administrar sus dependencias. El complemento de dependencia de Maven le permitirá ejecutar un comando simple en su proyecto y visualizar todas sus dependencias.





El recurso del complemento se muestra a continuación:

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



La mejor manera de visualizar el árbol de dependencias de su proyecto con este complemento es ejecutando el siguiente comando:

dependencia mvn : árbol

El comando anterior ubicará todas las dependencias en su proyecto y devolverá una estructura similar a un árbol.

Ilustremos cómo podemos lograr esto.

Puede usar cualquier proyecto de Maven con las dependencias requeridas para hacer esto.

Una vez que ejecute el comando anterior, debería ver el siguiente resultado de ejemplo:

[ INFORMACIÓN ] --- experto - dependencia - enchufar : 2.8 : árbol ( defecto - cli ) @ jedis ---
[ INFORMACIÓN ] redis. clientela : Jedi : frasco : 4.3.0 - INSTANTÁNEA
[ INFORMACIÓN ] +- org. slf4j : slf4j - API : frasco : 1.7.32 : compilar
[ INFORMACIÓN ] +- org. apache . los comunes : los comunes - piscina2 : frasco : 2.11.1 : compilar
[ INFORMACIÓN ] +- org. json : json : frasco : 20211205 : compilar
[ INFORMACIÓN ] +- con. Google . código . hijo : hijo : frasco : 2.8.9 : compilar
[ INFORMACIÓN ] +- junta : junta : frasco : 4.13.2 : prueba
[ INFORMACIÓN ] |   \ - org. cresta de la pierna : cresta de la pierna - centro : frasco : 1.3 : prueba
[ INFORMACIÓN ] +- org. slf4j : slf4j - simple : frasco : 1.7.32 : prueba
[ INFORMACIÓN ] +- con. kohlschutter . enchufe junix : enchufe junix - centro : ver : 2.4.0 : prueba
[ INFORMACIÓN ] |   +- con. kohlschutter . enchufe junix : enchufe junix - nativo - común : frasco : 2.4.0 : prueba
[ INFORMACIÓN ] |   \ - con. kohlschutter . enchufe junix : enchufe junix - común : frasco : 2.4.0 : prueba
[ INFORMACIÓN ] \ - org. maqueta : maqueta - en línea : frasco : 3.12.4 : prueba
[ INFORMACIÓN ]     \ - org. maqueta : maqueta - centro : frasco : 3.12.4 : prueba
[ INFORMACIÓN ]       +- red. bytebuddy : byte - amigo : frasco : 1.11.13 : prueba
[ INFORMACIÓN ]       +- red. bytebuddy : byte - amigo - agente : frasco : 1.11.13 : prueba
[ INFORMACIÓN ]       \ - org. acordado : acordado : frasco : 3.2 : prueba

Como puede ver en el resultado anterior, Maven devuelve todas las dependencias de nuestro proyecto en un formato de lista.

Es bueno tener en cuenta que este comando requiere que tengas Maven y Java JDK instalados en tu sistema.

Dependencias de filtrado

Si está trabajando en un proyecto grande, puede que le resulte difícil ver y administrar todas las dependencias con el comando anterior.

Afortunadamente, el complemento del árbol de dependencias de Maven le permite filtrar las dependencias que se muestran. Esto significa que puede incluir o excluir cualquier dependencia que desee.

Para incluir solo una dependencia específica, usamos la opción Dincludes como se muestra en la siguiente sintaxis:

dependencia mvn : árbol - Incluye [ Identificación del grupo ] : [ artefactoId ] : [ escribe ] : [ versión ]

Tenga en cuenta que cada uno de los segmentos del parámetro -Dincludes es opcional.

Por ejemplo, para mostrar cómo se usa una dependencia específica en el proyecto, podemos ejecutar el siguiente comando:

dependencia mvn : árbol - Incluye = enchufe junix : enchufe junix - centro

El código anterior debería devolver:

[ INFORMACIÓN ]
[ INFORMACIÓN ] ------------------------< redis. clientela : Jedi >-------------------------
[ INFORMACIÓN ] Construyendo Jedis 4.3.0 - INSTANTÁNEA
[ INFORMACIÓN ] -------------------------------- [ frasco ] ---------------------------------
[ INFORMACIÓN ]
[ INFORMACIÓN ] --- experto - dependencia - enchufar : 2.8 : árbol ( defecto - cli ) @ jedis ---

Para excluir una dependencia del árbol, podemos usar el parámetro -Dincludes como se muestra en la siguiente sintaxis:

dependencia mvn : árbol - Incluye = [ Identificación del grupo ] : [ artefactoId ] : [ escribe ] : [ versión ]

Por ejemplo:

dependencia mvn : árbol - Dexcluye = enchufe junix : enchufe junix - centro

Esto debería devolver la salida como se muestra a continuación:

Maven Guardar dependencia en archivo

También puede guardar el árbol de dependencias en un archivo mediante el parámetro -DoutputFile. A continuación se muestra un ejemplo:

dependencia mvn : árbol - DoutputFile = 'dep.árbol'

En el comando anterior, le indicamos a Maven que cree un árbol de dependencias y lo guarde en un archivo llamado dep.tree.

La salida del archivo resultante se proporciona a continuación:

+- org. slf4j : slf4j - API : frasco : 1.7.32 : compilar
+- org. apache . los comunes : los comunes - piscina2 : frasco : 2.11.1 : compilar
+- org. json : json : frasco : 20211205 : compilar
+- con. Google . código . hijo : hijo : frasco : 2.8.9 : compilar
+- junta : junta : frasco : 4.13.2 : prueba
|   \ - org. cresta de la pierna : cresta de la pierna - centro : frasco : 1.3 : prueba
+- org. slf4j : slf4j - simple : frasco : 1.7.32 : prueba
+- con. kohlschutter . enchufe junix : enchufe junix - centro : ver : 2.4.0 : prueba
|   +- con. kohlschutter . enchufe junix : enchufe junix - nativo - común : frasco : 2.4.0 : prueba
|   \ - con. kohlschutter . enchufe junix : enchufe junix - común : frasco : 2.4.0 : prueba
\ - org. maqueta : maqueta - en línea : frasco : 3.12.4 : prueba
\ - org. maqueta : maqueta - centro : frasco : 3.12.4 : prueba
+- red. bytebuddy : byte - amigo : frasco : 1.11.13 : prueba
+- red. bytebuddy : byte - amigo - agente : frasco : 1.11.13 : prueba
\ - org. acordado : acordado : frasco : 3.2 : prueba

Maven solo incluirá las dependencias del proyecto en el archivo de forma jerárquica.

Conclusión

Esta publicación cubría cómo ver el árbol de dependencias de Maven usando el complemento de dependencias de Maven.