我试图使用Maven来获得工件axis:axis:1.4的所有依赖关系,但收效甚微。这是我所做的:
POM:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>myapp</artifactId>
<version>1</version>
<dependencies>
<dependency>
<groupId>axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
</dependencies>
</project>
用于构建依赖关系图的批处理脚本:
@echo off
set PATH=%PATH%;D:\tools\apache-maven-3.6.0\bin
set JAVA_HOME=C:\Program Files (x86)\Java\jre1.8.0_171
call mvn compile dependency:tree -DoutputType=dot -DoutputFile=dependencies.txt
pause
结果:
digraph "com.mycompany:myapp:jar:1" {
"com.mycompany:myapp:jar:1" -> "axis:axis:jar:1.4:compile" ;
"axis:axis:jar:1.4:compile" -> "org.apache.axis:axis-jaxrpc:jar:1.4:compile" ;
"axis:axis:jar:1.4:compile" -> "org.apache.axis:axis-saaj:jar:1.4:compile" ;
"axis:axis:jar:1.4:compile" -> "axis:axis-wsdl4j:jar:1.5.1:runtime" ;
"axis:axis:jar:1.4:compile" -> "commons-logging:commons-logging:jar:1.0.4:runtime" ;
"axis:axis:jar:1.4:compile" -> "commons-discovery:commons-discovery:jar:0.2:runtime" ;
}
乍看之下,这似乎是合理的。但是,a quick search for the commons-logging:commons-logging:1.0.4 artifact揭示了更多的依赖关系。前述的commons-logging库取决于:
...但是在生成的依赖图中找不到这些依赖(及其依赖)。
因此,我的问题如下:是否有一种方法可以使上述依赖关系(及其依赖关系以及它们的依赖关系的依此类推等等)显示在图中?如果可以,怎么办?
答案 0 :(得分:0)
<optional>true</optional>
为您提供了完整的依赖关系列表。提到的文物
是RewriteRule ^foo/$ /foo/bar [R=301,L]
的依赖项。这些没有被绘制为传递依赖,因此它们不包含在依赖树中。