Cree un proyecto simple solo con pom.xml. Agregue su dependencia y ejecute:
mvn dependency:tree
Desafortunadamente, mojo de dependencia debe usar pom.xml o obtendrá el siguiente error:
No se puede ejecutar mojo: árbol. Requiere un proyecto con un pom.xml existente, pero la compilación no está usando uno.
2) Encuentra pom.xml de tu artefacto en el repositorio central de maven
Las dependencias se describen en pom.xml de su artefacto. Encuéntralo usando la infraestructura de Maven.
Vaya a http://search.maven.org/ e ingrese su groupId y artifactId.
O puede ir a http://repo1.maven.org/maven2/ y navegar primero usando plugins groupId, luego usando artifactId y finalmente usando su versión.
Por ejemplo, vea org.springframework: spring-core
3) Use el complemento de dependencia de Maven contra su artefacto
Parte del artefacto de dependencia es un pom.xml. Eso especifica que es dependencia. Y puede ejecutar la dependencia mvn: árbol en este pom.
pom.xml
archivos), puede obtener un error. Intentamvn compile dependency:tree
entonces.Si se molesta en crear un proyecto de muestra y agregarle su dependencia de terceros, puede ejecutar lo siguiente para ver la jerarquía completa de las dependencias.
Puede buscar un artefacto específico utilizando este comando maven:
De acuerdo con la documentación:
Imagine que está tratando de encontrar el archivo jar 'log4j-1.2-api' entre los diferentes módulos de su proyecto:
Más información se puede encontrar aquí .
Editar: Tenga en cuenta que, a pesar de las ventajas de usar el parámetro detallado , puede que no sea tan preciso en algunas condiciones. Porque usa el algoritmo Maven 2 y puede dar resultados incorrectos cuando se usa con Maven 3.
fuente
-Dverbose
fue suficiente para mostrarme el árbol completo que necesitaba. Canalizar la salida aoless
similar y hacer una búsqueda rápida funciona muy bien si no puede recordar laincludes
bandera o no desea proporcionar el carácter completo o comodíngroupId
:)[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.8:tree (default-cli): Goal requires a project to execute but there is no POM in this directory (...). Please verify you invoked Maven from the correct directory. -> [Help 1]
La solución es llamar a dependencia: árbol con el archivo pom.xml del artefacto:
Consulte también ¿Cómo enumerar las dependencias transitivas de un artefacto de un repositorio?
fuente
Si usa una versión actual de m2eclipse (que debería usar si usa eclipse y maven):
Seleccione la entrada del menú
Navigate -> Open Maven POM
e ingrese el artefacto que está buscando.
El pom se abrirá en el editor de pom, desde el cual puede seleccionar la pestaña
Dependency Hierarchy
para ver la jerarquía de dependencia (como su nombre indica :-))fuente
Si su artefacto no es una dependencia de un proyecto determinado, su mejor opción es utilizar un motor de búsqueda de repositorio . Muchos de ellos describen las dependencias de un artefacto dado.
fuente
Si desea obtener una representación gráfica y de búsqueda del árbol de dependencias (incluidos todos los módulos de su proyecto, dependencias transitivas e información de desalojo), consulte UpdateImpact: https://app.updateimpact.com (servicio gratuito).
Descargo de responsabilidad: soy uno de los desarrolladores del sitio
fuente
Sé que esta publicación es bastante antigua, pero aún así, si alguien que usa IntelliJ quiere ver el árbol de dependencias directamente en IDE, puede instalar el complemento Maven Helper Plugin .
Una vez instalado, abra pom.xml y podrá ver la pestaña Análisis de dependencia como se muestra a continuación. También ofrece la opción de ver la dependencia que solo está en conflicto y también como una estructura de árbol.
fuente