我最近开始在 Go 中使用模块,但我经常遇到这样的问题,即在一台机器上一切正常,但在另一台机器上构建代码库时遇到校验和不匹配。该问题始终涉及相同的第三方依赖项 (github.com/ericlagergren/decimal):go: verifying github.com/ericlagergren/decimal@v0.0.0-20181231230500-73749d4874d5: checksum mismatch downloaded: h1:HQGCJNlqt1dUs/BhtEKmqWd6LWS+DWYVxi9+Jo4r0jE= go.sum: h1:x4oNpFLLl+8l+iLgksNHzZewTS0SKp6m0hlLwzXRbqA=我尝试了各种方法:删除和重新生成go.sum,将 Go 本身升级到最新的补丁版本并从中删除依赖项,go.mod但似乎没有任何方法可以解决此问题。有谁知道如何解决这个问题?
4 回答
qq_笑_17
TA贡献1818条经验 获得超7个赞
您可以运行go clean -modcache
,然后go mod tidy
它将使用正确的校验和重新下载所有 dep(这会更新 中的 pkg 缓存$GOPATH/pkg/mod/
)。
要更新vendor/
文件夹运行:go mod vendor
.
慕仙森
TA贡献1827条经验 获得超7个赞
您使用的是哪个版本的 Go?您很有可能遇到以下情况的后果1.11.2 -> 1.11.4
:
这仍然没有完全解决。请记住,它go mod
仍在开发中,所以这样的事情可能会在 1.13 之前发生。
请务必阅读 Go 的次要版本,以及这些事情是如何发生的: https: //github.com/golang/go/wiki/MinorReleases
TL;DR - 升级去
湖上湖
TA贡献2003条经验 获得超2个赞
我遇到过同样的问题。我更新了 go 版本并从 go.mod 中删除了导入并从 go.sum 中删除了所有条目并运行 go mo tidy,它下载了所有依赖项而没有任何问题。
哈士奇WWW
TA贡献1799条经验 获得超6个赞
我在使用 1.12.8 时遇到了同样的问题,并且缓存清理没有帮助。结果我仍然被困在 GOPATH 和 Mod 世界的中间。发现了一个标志,它对我有用。
go run -mod=vendor main.go
- 4 回答
- 0 关注
- 159 浏览
添加回答
举报
0/150
提交
取消