¿Cómo puede mostrar el árbol de dependencia de Maven para los * complementos * en su proyecto?

130

Una técnica común de depuración de Maven es utilizar la dependencia mvn: árbol para ver el gráfico de dependencias del proyecto.

Sin embargo, esta lista muestra las dependencias del proyecto, no el árbol de dependencia del complemento para cada complemento. ¿Hay alguna manera de hacer esto desde un proyecto?

Alex Miller
fuente
1
¿Has intentado ejecutar mvn -X ...
Khmarbaise
Sí, y eso es útil para ciertos problemas, pero no es lo que estoy pidiendo.
Alex Miller
Contiene las dependencias de un complemento, de lo contrario no hay tal cosa disponible.
khmarbaise
@khmarbaise es correcto. El árbol de dependencia de un complemento está disponible en la salida de depuración de Maven. Tampoco conozco otra forma de obtenerlo. (Si convierte esto en una respuesta, lo votaré).
Ryan Stewart
Ver también stackoverflow.com/q/312767/32453
rogerdpack

Respuestas:

102

La salida a través de mvn -X imprimirá la información indirectamente. Actualmente no hay otra opción para obtener las dependencias de un Maven-Plugin.

Actualizar Puede usar el siguiente comando para obtener una lista de dependencias de complementos ( objetivo resolver-complemento del complemento de dependencias):

mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:resolve-plugins

La versión más corta es (y es un mal hábito especificar versiones de complementos)

mvn dependency:resolve-plugins
khmarbaise
fuente
14
resolve-plugins no solo genera el árbol de dependencias ... parece volver a descargar todos los paquetes. No es ideal.
Reinderien
55
El complemento no respeta las dependencias <build><plugins><plugin><dependencies><dependency>
anuladas del
utilizar la última versión del complemento: mvn org.apache.maven.plugins: maven-dependency-plugin: 2.10: resolve-plugins
STB Land
Por defecto, Maven carga la versión 2 del complemento de dependencia. Personalmente logré obtener mejores resultados al usar la versión 3.x.
Dragas
-3

Si está utilizando algún IDE como IDEA IntelliJ o Eclipse:

  • Puede agregar este complemento a continuación en su pom.xml
  • Una vez hecho esto, en la ventana de Maven (a la derecha de IDE), encontrará un nuevo complemento llamado Dependencias
  • Expanda eso y verá la dependencia: objetivo del árbol, haga doble clic en él y ejecútelo, debería ver el árbol de dependencia completo

Complemento para agregar en POM:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-dependency-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>
Dean Jain
fuente