2

我有一个相当大的项目(约 30 个模块)并且想要可视化模块间的依赖关系,不包括第 3 方。

似乎现有的工具根本无法处理 maven reactor。maven 依赖插件(dependency:tree 目标)知道如何生成 graphml,但仅限于每个模块。如果我使用附加标志,它只是将所有内容推送到一个文件中,因此输出是损坏的 graphml。

我也找到了这个工具,但似乎没有办法控制模块粒度。

我最后的手段是解析dependency:tree的输出,但我想在此之前我会咨询社区。

4

2 回答 2

1

我喜欢depgraph-maven-plugin可视化多模块项目中的依赖关系。要dependency:tree为您的模块获取文本格式(如 )的聚合结果,请使用:

mvn com.github.ferstl:depgraph-maven-plugin:aggregate -DgraphFormat=text -Dincludes=myGroupId

包含的语法与maven-dependency-plugin 包含的语法相同。

它有很多属性可以自定义结果/行为。我更喜欢将它与graphviz一起使用,因此我可以使用(默认)图形格式dot并让它png在文件夹中创建一个文件target

mvn com.github.ferstl:depgraph-maven-plugin:aggregate -DcreateImage -Dincludes=myGroupId

还有其他有趣的目标,例如example快速使用属性的目标。

于 2020-10-01T09:53:47.463 回答
-1

我其实也有同样的情况。我们有 4 个大项目,每个项目大约 100 个 pom.xml 以及它们之间的依赖关系。我还没有找到好的软件。

现在我使用结构 101 (structure101.com) 向我展示它们之间的依赖关系。当然,它不是基于 maven pom.xml,但在我的情况下,我认为问题在于我在每个应用程序中都有大量的 maven 项目是缺少的软件架构。

目前我尝试在类/包级别以及部署视图(https://en.wikipedia.org/wiki/Deployment_diagram)上可视化这些依赖关系

我希望这对您有所帮助。

我使用的软件,但没有任何工具对我的 pom.xml 计数非常有用:

于 2015-06-23T18:44:11.837 回答