如何修复“开始:警告:在GOPATH / src中被GO111MODULE = auto禁用的模块”

Deh*_* Li 8 go

我正在尝试使用以下命令安装golint:go get -u golang.org/x/lint/golint。而且我认为我遇到两个问题:

go get: warning: 
    modules disabled by GO111MODULE=auto in GOPATH/src;
    ignoring ../go.mod;
    see 'go help modules'

package golang.org/x/lint/golint: 
unrecognized import path "golang.org/x/lint/golint" (https fetch: Get https://golang.org/x/lint/golint?go-get=1: dial tcp 216.58.200.192:443: i/o timeout)
Run Code Online (Sandbox Code Playgroud)

然后我尝试安装golang / tools,也失败了...

package golang.org/x/tools: unrecognized import path "golang.org/x/tools" (https fetch: Get https://golang.org/x/tools?go-get=1: dial tcp 216.58.200.192:443: i/o timeout)
Run Code Online (Sandbox Code Playgroud)

Vic*_*uak 53

我运行了这个命令

export GO111MODULE="on" 
Run Code Online (Sandbox Code Playgroud)

这对我有用......


Ama*_*esh 18

在命令行或 powershell 中输入以下内容:

go env -w GO111MODULE=on
Run Code Online (Sandbox Code Playgroud)

应该可以解决你的问题


Eff*_*'an 11

尝试使用时也出现此错误 vgo

删除GOROOT(无需显式设置GOROOT,Go的现代版本可以根据运行的go二进制文件的位置自行export GO111MODULE="on"解决),更新我的GOPATH并解决了问题。

GOPATH在这里看到

可以将GOPATH设置为以冒号分隔的路径列表,在其中可以找到Go代码,包对象和可执行文件。

设置GOPATH以使用goinstall在Go树之外构建和安装您自己的代码和外部库(并避免编写Makefile)。

  • 对于 Windows,运行“set”而不是“export” (3认同)
  • 对于 Windows,`set GO111MODULE=on`,不带引号 (2认同)

dls*_*per 6

看起来您go.mod在 $GOPATH/ (下$GOPATH/go.mod)中有一个文件。你应该删除它。此外,由于您使用的是 Go 1.11 或更高版本,因此您可以go get从 GOPATH/任何包含go.mod文件的目录之外直接或在父目录中运行该命令,然后该命令应该可以工作。