go mod graph 可直观查看模块依赖关系,每行表示“依赖者 → 被依赖者”,格式为[依赖模块] [被依赖模块@版本],支持结合 grep、wc、Graphviz 等工具分析依赖数量、反向依赖及可视化,适用于排查多版本冲突、高危模块引入等问题,搭配 go mod why 可精准定位依赖链。

Go 模块的依赖关系可以通过 go mod graph 命令直观地查看。它输出的是模块之间的依赖图,每一行表示一个“依赖者 → 被依赖者”的关系。
在项目根目录下执行:
go mod graph
输出示例如下:
github.com/user/project golang.org/x/text@v0.3.7 github.com/user/project github.com/pkg/errors@v0.9.1 golang.org/x/text@v0.3.7 golang.org/x/tools@v0.6.0
这说明你的项目依赖了 x/text 和 errors,而 x/text 又依赖了 x/tools。
立即学习“go语言免费学习笔记(深入)”;
每行格式为:
[依赖模块] [被依赖模块@版本]
注意:这里的“依赖模块”不一定是你的主模块,也可能是间接依赖的中间模块。
整个图是有向图,可能存在多条路径指向同一个模块,也就是多个上级依赖了同一个下游模块。
原始输出是文本形式,适合用命令行工具进一步处理。常见做法:
当你遇到以下情况时,可以用 go mod graph 辅助排查:
搭配 go mod why 使用效果更好。比如先用 graph 发现异常依赖,再用 why 查看具体引用链。
基本上就这些。不复杂但容易忽略。熟练使用能快速理清模块间关系。
以上就是Golang如何使用go mod graph分析依赖的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号