go mod tidy总是安装最新依赖,如何查找哪个模块导致某个包安装最新依赖,提供一个小工具

安装: go install github.com/jan-bar/interesting/findModVer@latest

执行:findModVer d:\myproject

结果如下图所示:

根据结果可以找到哪个依赖导致google.golang.org/grpc v1.45.0使用了这个版本,这样每次执行go mod tidy会自动修改该模块到v1.45.0版本。我看了下github.com/spf13/viper v1.11.0就是用的google.golang.org/grpc v1.45.0版本,因此我可以通过限制viper v1.11.0来限制grpc v1.45.0,这时候执行go mod tidy就会限制grpc v1.45.0。通过我这个小工具可以方便的找到哪些库是因为哪个库导致go mod tidy后修改自己模块的该库到最新版本。

当前也可以在自己库里用如下方法限制版本,但如果该库是公共库,其他人使用时也需要加上这个限制。

go 复制代码
replace (
	google.golang.org/grpc => google.golang.org/grpc v1.45.0
)
相关推荐
Grassto1 小时前
深入 `modload`:Go 是如何加载并解析 module 的
golang·go·go module
赴前尘2 小时前
golang 查看指定版本库所依赖库的版本
开发语言·后端·golang
bing.shao8 小时前
golang 做AI任务链的优势和场景
开发语言·人工智能·golang
源代码•宸9 小时前
Golang原理剖析(Map 源码梳理)
经验分享·后端·算法·leetcode·golang·map
龙门吹雪10 小时前
GO 语言处理多个布尔选项的实现方案
开发语言·后端·golang·布尔选项·标识位
源代码•宸11 小时前
Golang原理剖析(map面试与分析)
开发语言·后端·算法·面试·职场和发展·golang·map
AC赳赳老秦13 小时前
技术文档合著:DeepSeek辅助多人协作文档的风格统一与内容补全
android·大数据·人工智能·微服务·golang·自动化·deepseek
Grassto14 小时前
9 Go Module 依赖图是如何构建的?源码解析
开发语言·后端·golang·go module
bing.shao14 小时前
基于 Go + Ollama 开发智能日志分析工具完整实战
开发语言·后端·golang
Hello.Reader15 小时前
连接四元组它为什么重要,以及它和端口复用(SO_REUSEPORT)的关系(Go 实战)
开发语言·后端·golang