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
)
相关推荐
源代码•宸5 小时前
分布式缓存-GO(分布式算法之一致性哈希、缓存对外服务化)
开发语言·经验分享·分布式·后端·算法·缓存·golang
半桶水专家12 小时前
GORM 结构体字段标签(Struct Tags)详解
golang·go·gorm
GokuCode12 小时前
【GO高级编程】05.类的扩展与复用
golang·embedding·xcode
Tony Bai13 小时前
Jepsen 报告震动 Go 社区:NATS JetStream 会丢失已确认写入
开发语言·后端·golang
bing.shao13 小时前
Golang 之 defer 延迟函数
开发语言·后端·golang
penngo13 小时前
Golang使用Fyne开发桌面应用
开发语言·后端·golang
ByNotD0g16 小时前
Golang Green Tea GC 原理初探
java·开发语言·golang
NaturalHarmonia17 小时前
【Go】sync package官方示例代码学习
开发语言·学习·golang
海上彼尚17 小时前
Go之路 - 7.go的函数
开发语言·后端·golang
weixin_4492900117 小时前
Ubuntu 系统上安装和配置 Go 语言运行环境
linux·ubuntu·golang