执行 go mod tidy出现报错:
github.com/go-yaml/yaml: github.com/go-yaml/yaml@v0.0.0-20220527083530-f6f7691b1fde: parsing go.mod:
module declares its path as: gopkg.in/yaml.v3
but was required as: github.com/go-yaml/yaml
解决方案:
在go.mod文件中加入:
#这里的v3.0.1版本可以去go.sum中查看
replace github.com/go-yaml/yaml => gopkg.in/yaml.v3 v3.0.1
修改好后,再次执行 go mod tidy。发现出现新的报错:
gopkg.in/yaml.v3 v3.0.1 used for two different module paths (github.com/go-yaml/yaml and gopkg.in/yaml.v3)
解决方案:再写一个replace:
replace gopkg.in/yaml.v3 v3.0.1 => github.com/go-yaml/yaml v0.0.0-20220527083530-f6f7691b1fde
注意:
这里后者的版本号v0.0.0-20220527083530-f6f7691b1fde是复制最上面那个报错提示出现的版本号。v3.0.1可以参考go.sum中出现的版本号。