我有一个非常大的围棋项目,依赖于github.com/golang/mock
.不幸的是,这个包不再被维护,开发人员已经指示人们使用go.uber.org/mock
的Forking .因此,我想将github.com/golang/mock
依赖项替换为go.uber.org/mock
.
据我所知,这正是go.mod的replace
指令的目的(允许您替换依赖项,而不必更改每个文件中的导入路径).因此,用fork 替换此模块应该和在我的go.mod
中添加以下代码行一样简单:
replace github.com/golang/mock => go.uber.org/mock v0.2.0
遗憾的是,在try 运行任何go
命令时,这会导致错误:
$ go mod tidy
...
go: go.uber.org/mock@v0.2.0 used for two different module paths (github.com/golang/mock and go.uber.org/mock)
What am I doing wrong here?个
如有必要,您可以查看回购/promise here.