Dans Maven 2, comment savoir de quelle dépendance provient une dépendance transitive?


97

Je voudrais savoir quelle dépendance décrite dans mon pom.xml apporte une dépendance transitive dans mon répertoire cible.

Pour être plus précis, j'ai la bibliothèque "poi-2.5.1-final-20040804.jar" dans mon répertoire WEB-INF / lib et j'aimerais savoir quelle dépendance dans mon pom.xml apporte cela.

Réponses:


132

Pour ajouter à @David Crow, voici un exemple de dépendance: tree du site Maven:

mvn dependency:tree -Dincludes=velocity:velocity

pourrait sortir

[INFO] [dependency:tree]
[INFO] org.apache.maven.plugins:maven-dependency-plugin:maven-plugin:2.0-alpha-5-SNAPSHOT
[INFO] \- org.apache.maven.doxia:doxia-site-renderer:jar:1.0-alpha-8:compile
[INFO]    \- org.codehaus.plexus:plexus-velocity:jar:1.1.3:compile
[INFO]       \- velocity:velocity:jar:1.4:compile

1
Cela n'a pas fonctionné pour moi; tout ce que j'ai obtenu, ce sont des erreurs concernant les valeurs «héritées» non prises en charge. L'exécution de la version de @David Crow (c'est-à-dire sans l'indicateur de vitesse) a bien fonctionné.
Vlad Schnakovszki


8

Si vous utilisez eclipse et le plugin m2eclipse, il existe une version graphique de l'arbre de dépendances où vous pouvez filtrer par portée, etc.


2

Vous pouvez avoir de nombreux rapports par

site mvn

L'un d'eux est le rapport de dépendance.


1

Si vous exécutez maven avec le commutateur "-x", il affichera beaucoup de diagnostics, je suppose que le chemin de dépendance pertinent peut être récupéré à partir de là.


2
En fait, cette réponse est utile. J'étais confronté au bogue indéfini de la classe éther bien connu causé par la mise à niveau de mon Maven de 3.0 à 3.3 et la commande suivante a révélé qu'un autre plugin maven était toujours en train de sourcer la version 3.0.5 de org.apache.maven: maven-core: mvn -X dependency:tree -Dverbose |grep -C20 sonatype.aether
ekarak

Bien que "-X" (majuscule, nom alternatif "--debug") soit souvent utile, il ne vous indique pas l'origine d'un numéro de version. Pas sur Maven 3.6.0 de toute façon.
toolforger

1

Les informations de dépendance sont également incluses dans le rapport Informations sur le projet / Dépendances si vous avez maven générer un site pour le projet, à l'aide du site mvn.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.