登录
首页 >  Golang >  Go问答

加载模块要求时出现错误(GO111MODULE=on)

来源:stackoverflow

时间:2024-03-19 21:09:37 341浏览 收藏

使用 GO111MODULE=on 模式时,go get 命令在加载模块需求时遇到错误。问题源于一个依赖包 go-sqlmock 的版本问题,其 go.mod 文件中包含了一个非版本后缀的模块路径,导致 go get 无法正确加载模块需求。如果您希望在不更新依赖项的情况下使用开发分支,可以尝试使用 go get 命令而不带 -u 标志。

问题内容

go get -u github.com/junegunn/fzf 工作正常,但想像这样测试开发分支:

gert@gert ~/ GO111MODULE=on go get -u github.com/junegunn/fzf@devel
go: finding github.com/junegunn/fzf devel
go: finding golang.org/x/crypto latest
go: finding github.com/smartystreets/assertions latest
go: finding github.com/gopherjs/gopherjs latest
go: finding github.com/smartystreets/goconvey latest
go: finding github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1
go: finding golang.org/x/sys latest
go: finding golang.org/x/tools v0.0.0-20190328211700-ab21143f2384
go: gopkg.in/DATA-DOG/[email protected]: go.mod has non-....v1 module path "github.com/DATA-DOG/go-sqlmock" at revision v1.3.3
go get: error loading module requirements

不确定这里发生了什么?如果我这样做会得到相同的结果

go111module=on go get -u github.com/junegunn/fzf


解决方案


fzf 所需的包 github.com/gdamore/tcell 具有 gopkg.in/data-dog/go-sqlmock.v1 依赖项。在 go-sqlmock 的 1.3.3 版本中,他们开始使用没有版本后缀的 go 模块,现在明确指示该版本不再有效。

go get gopkg.in/DATA-DOG/go-sqlmock.v1
go: gopkg.in/DATA-DOG/[email protected]: go.mod has non-....v1 module path "github.com/DATA-DOG/go-sqlmock" at revision v1.3.3
go: error loading module requirements

如果您想在不更新其依赖项的情况下使用 devel 包,请使用 go 获取 github.com/junegunn/fzf,而不带 -u 标志。

tcell 存储库中有关于此问题的开放拉取请求:https://github.com/gdamore/tcell/pull/267

本篇关于《加载模块要求时出现错误(GO111MODULE=on)》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>