gpt4 book ai didi

go - 如何强制 go mod 接受声明其路径与其 go.mod 不同的模块?

转载 作者:行者123 更新时间:2023-12-04 12:29:41 31 4
gpt4 key购买 nike

当我运行“go mod tidy”时它会中断,因为我的项目导入的包使用路径“github.com/coreos/bbolt”导入了另一个包,但是当它从该路径获取包时,它的 go.mod 说它的路径是“go.etcd.io/bbolt”。
问题是导入包和导入包都是第3方包。我知道我可以编辑 go 模块缓存来修复它,但是当这些包的新版本可用时,修复它真的很麻烦。
部分回显消息如下所示:

    github.com/coreos/etcd/client tested by
github.com/coreos/etcd/client.test imports
github.com/coreos/etcd/integration imports
github.com/coreos/etcd/etcdserver imports
github.com/coreos/etcd/mvcc/backend imports
github.com/coreos/bbolt: github.com/coreos/bbolt@v1.3.5: parsing go.mod:
module declares its path as: go.etcd.io/bbolt
but was required as: github.com/coreos/bbolt

那么,我该如何解决或解决这种情况?

最佳答案

您可以使用 replace directive 修复此解决方案。
只需添加:

replace github.com/coreos/bbolt v1.3.5 => go.etcd.io/bbolt v1.3.5
在您的 go.mod 末尾文件

关于go - 如何强制 go mod 接受声明其路径与其 go.mod 不同的模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66793546/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com