检测托管Maven依赖项的版本来源

piwo6bdm  于 2023-03-29  发布在  Maven
关注(0)|答案(2)|浏览(216)

我的软件中有复杂的可传递依赖关系树。这些依赖关系的版本由(可传递)依赖关系管理块管理。一个依赖关系的有效版本不正确(1.2.1)。如果我转储依赖关系树,它会显示使用了此依赖关系的不正确版本,例如:

com.example.artifact:1.2.1 (managed from 1.3.0-SNAPSHOT) [compile]

我找不到此无效版本的原因。依赖关系树没有多大帮助!我如何找到特定托管版本的来源?

7lrncoxx

7lrncoxx1#

我知道这个答案来得晚了很多年,但几分钟后,同样的问题我可以通过以下方式解决:
1.将传递依赖项显式添加到不带version标记的pom.xml:

<dependencies>
...
  <dependency>
    <groupId>com.example</groupId>
    <artifactId>artifact</artifactId>
  </dependency>

1.至少在EclipseIDE中,您现在可以将鼠标悬停在工件上,工具提示将显示它的管理位置(通常是父pom.xml或具有***scopeimport***的依赖项)。

aamkag61

aamkag612#

verbose标志添加到maven-dependency-plugin应该可以帮助您:

mvn org.apache.maven.plugins:maven-dependency-plugin:3.5.0:tree -Dincludes=com.example:artifact -Dverbose=true

相关问题