No Maven 2, como faço para saber de qual dependência vem uma dependência transitiva?

97

Gostaria de saber qual dependência descrita em meu pom.xml traz uma dependência transitiva em meu diretório de destino.

Para ser mais preciso, tenho a biblioteca "poi-2.5.1-final-20040804.jar" no meu diretório WEB-INF / lib e gostaria de saber qual dependência no meu pom.xml traz isso.

paulgreg
fonte

Respostas:

132

Para adicionar ao @David Crow, aqui está uma dependência: exemplo de árvore do site Maven:

mvn dependency:tree -Dincludes=velocity:velocity

pode produzir

[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
A. Rex
fonte
1
Isso não funcionou para mim; tudo o que recebi foram erros sobre valores 'legados' não suportados. Executar a versão de @David Crow (ou seja, sem a bandeira de velocidade) funcionou bem.
Vlad Schnakovszki
8

Se você usar o eclipse e o plugin m2eclipse , há uma versão gráfica da árvore de dependências onde você pode filtrar por escopo, etc.

Brian Fox
fonte
2

Você pode ter muitos relatórios por

site mvn

Um deles é o relatório de dependência.

Bang
fonte
1

Se você executar o maven com a opção "-x", ele imprimirá muitos diagnósticos, acho que o caminho de dependência relevante pode ser obtido a partir daí.

Valters Vingolds
fonte
2
Na verdade, essa resposta é útil. Eu estava enfrentando o conhecido bug indefinido da classe éter causado pela atualização do meu Maven de 3.0 para 3.3 e o seguinte comando revelou que outro plugin maven ainda estava fornecendo a versão 3.0.5 de org.apache.maven: maven-core: mvn -X dependency:tree -Dverbose |grep -C20 sonatype.aether
ekarak
Embora "-X" (maiúscula, nome alternativo "--debug") seja frequentemente útil, ele não informa a origem de um número de versão. Não no Maven 3.6.0 de qualquer maneira.
toolforger 01 de
1

As informações de dependência também estão incluídas no relatório Informações do projeto / Dependências se o maven gerar um site para o projeto, usando o site mvn.

Filip Korling
fonte