生成 方法调用图 和 Maven 依赖图(IDEA 插件)

DrawGraph是一款适用于2020.2及以上版本IntelliJIDEA的插件,利用Mermaid.js库创建单个或多个Java文件的调用图以及POM.xml的依赖图。用户可以选择多个文件通过右键菜单生成图形。此外,它还提供了与ShowComment、FindAuthor和SyncCoverage等其他插件的功能对比,如显示注释、查找文件作者和覆盖率同步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Draw Graph 关系图插件

用法

单个 java 文件调用图 或 所有 pom.xml 依赖图:

  1. 打开右边的工具栏
  2. 打开 *.java/pom.xml 文件

多个 java 文件调用图 或 部分 pom.xml 依赖图:

  1. 选择多个文件
  2. 打开右键菜单
  3. 选择调用图

关于

只支持 2020.2 以上因为 mermaid.js 只能在 jcef(chrome) 中使用,
2020.1 以下用的是 JavaFx WebView。

介绍效果图

方法调用图
Maven 依赖图

同类插件对比

Draw Graph
打开文件自动生成,多个文件右击生成
Draw Graph
Call Graph
弹出框选择文件生成
Call Graph
PlantUML Diagram Generator
点击多个文件右击生成
PlantUML Diagram Generator
IDEA 自带依赖矩阵
点击多个文件右击生成
IDEA 自带依赖矩阵
上图左边文件显示注释效果是 Show Comment 插件

我的项目

  • 在文件树、行末、JSON 显示注释:Show Comment
  • 生成 方法调用图 和 Maven 依赖图:Draw Graph
  • 查找多个文件或行的作者 与 导出搜索:Find Author
  • 自动同步覆盖率 和 调试中抓取覆盖率:Sync Coverage
### 如何生成Maven依赖图 #### 使用 `depgraph-maven-plugin` 插件 可以通过配置并运行 `depgraph-maven-plugin` 来生成Maven项目的依赖关系。此插件支持多种输出格式,例如 DOT、GML、PlantUML 等[^1]。以下是具体操作方法: 在项目的根目录下的 `pom.xml` 中添加如下插件配置: ```xml <build> <plugins> <plugin> <groupId>com.github.ferstl</groupId> <artifactId>depgraph-maven-plugin</artifactId> <version>3.0.0</version> </plugin> </plugins> </build> ``` 执行以下命令来生成依赖图文件: ```bash mvn com.github.ferstl:depgraph-maven-plugin:graph ``` 默认情况下,该命令会生成一个 `.dot` 文件,可以将其转换为片或其他可视化形式。 #### IDEA内置功能 如果希望更直观地查看依赖关系,可以直接利用 IntelliJ IDEA形化界面功能。通过打开右侧的 **Maven 工具窗口** 并加载对应的 `pom.xml` 文件即可显示依赖树结构[^2]。此外还可以借助 IDEA 提供的方法调用生成功能进一步扩展分析范围。 对于复杂的项目来说,可能存在多个版本间的冲突情况,则推荐使用官方提供的命令行工具检测潜在问题: ```bash mvn dependency:tree -Dverbose -Dincludes=<groupId>:<artifactId> ``` 上述指令能够帮助开发者定位具体的重复引入位置以及解决办法[^3]。 ```python import graphviz def render_dependency_graph(dot_file_path, output_format='png'): with open(dot_file_path, 'r') as file: dot_content = file.read() g = graphviz.Source(dot_content) rendered_image = f"{dot_file_path}.{output_format}" g.render(filename=rendered_image, format=output_format) # Example usage of the function to convert .dot into an image. render_dependency_graph('path/to/generated/graph.dot', 'svg') ``` 以上脚本可用于自动化处理由 `depgraph-maven-plugin` 创建出来的 `.dot` 文件,并将其渲染成易于分享理解的形式比如 SVG 或 PNG 片。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值