如何在供应模式下使用 go list -u -m all ?

Moz*_*zhi 3 go go-modules

我刚刚升级到 go1.14 并go list -u -m all使用 -mod=vendor GOFLAG 运行命令,我遇到无法使用供应商目录确定可用升级的情况。我浏览了发行说明(https://golang.org/doc/go1.14#go-command),但无法弄清楚为什么会出现此错误。(我的 go.mod 和vendor/modules.txt 是同步的)。

什么时候使用-mod=readonlylikego list -mod=readonly -u -m all命令?go list -u -m all使用with有什么问题 -mod=vendor

任何指示将不胜感激。谢谢。

GOGOPATH=/home/vagrant/go_workspace
GO111MODULE=on
GOFLAGS=-mod=vendor
============================================
go list  -u -m all
go list -m: can't determine available upgrades using the vendor directory
        (Use -mod=mod or -mod=readonly to bypass.)

Run Code Online (Sandbox Code Playgroud)

bcm*_*lls 5

-mod=vendor请求命令使用目录中的信息go解析有关依赖项的信息。vendor

vendor目录不一定包含有关可用升级的信息,因为vendor目录本身是在单个时间点创建的。为了确定可用的升级,您必须与模块代理服务器或源服务器建立网络连接,以查看哪些其他版本可用。

因此,这两个标志确实不兼容:要么您可以检查升级,要么您只能使用目录中的内容vendor,但不能同时使用两者。