go get golang.org/x 失败的解决方案 发表于 2019-08-21 | 分类于 Golang | 暂无评论 使用```go get```等命令的时候会自动下载安装相关的包。 但由于众所周知的网络原因,在下载```golang.org/x```中的包时经常会出现如下错误: ``` go get golang.org/x/sys: unrecognized import path "golang.org/x/sys" (https fetch: Get https://golang.org/x/sys?go-get=1: dial tcp 216.239.37.1:443: i/o timeout) ``` 对于该错误,总结了三个解决方案。 ###使用GOPROXY环境变量(最推荐方案) **前提是go的版本要>=1.11** 1. 开启go module功能。可以通过将环境变量```GO111MODULE```设置为```on```来开启这个功能。置空则关闭这个功能。 2. 然后将环境变量```GOPROXY```设置为```https://goproxy.io```即可。 命令参考: ```export GO111MODULE=on``` ```export GOPROXY=https://goproxy.io``` ```$env:GO111MODULE = "on"``` ```$env:GOPROXY = "https://goproxy.io"``` ###使用全局代理 直接设置环境变量```http_proxy```或是```https_proxy```又或是```all_proxy```来直接使go进程下载。 ###手动下载并安装 GitHub上有大多数包的下载途径,所以就可以手动下载安装再安装。极度不推荐,因为版本无法控制,依赖太多简直累skr人... 代码参考: ``` mkdir $GOPATH/src/golang.org/x cd $GOPATH/src/golang.org/x git clone git@github.com:golang/xxx.git rm -rf xxx/.git ```