golang.org 已经被墙了,常用的 golang.org/x 等直接下载肯定是失败的。所以从 Go11 开始引入了 GoProxy 的机制,简单通过设置 GO111MODULE
和 GOPROXY
两个环境变量就可以任意访问 golang.org 里的包。
详情参考 https://goproxy.io/
阿里家 https://mirrors.aliyun.com/goproxy/
但是即使环境变量全配置正确,在 vscode 里通过 Go 语言插件安装相关工具时还是全报网络错误,提示连接不上 golang.org,费了好大劲才发现这不是 vscode 的问题,是插件的问题,插件源码里手动禁用了 GO111MODULE,因为插件是 js 写的,所以我们可以直接修改插件代码。
路径在 C:\Users\你的用户名\.vscode\extensions\ms-vscode.go-0.11.0\out\src\goInstallTools.js
295 行:
envForTools['GO111MODULE'] = 'off';
只要注掉这一行或者将值改为 on,重启 vscode 再安装插件就可以了。