由于某些不可抗力的原因,国内使用go get命令安装包时会经常会出现timeout的问题。本文介绍几个常用的解决办法。
目录
从github克隆
golang在github上建立了一个镜像库,如就对应是 的镜像库。 要下载golang.org/x/net包,可以在本地创建包的目录后使用git clone来拉取相应包的源代码文件,具体操作如下:
mkdir -p $GOPATH/src/golang.org/x cd $GOPATH/src/golang.org/x git clone .git使用gopm
使用gopm可以从golang.org的一些镜像网站上下载。
安装gopm
go get -u github.com/gpmgo/gopm使用gopm安装第三方包
不加-g参数,会把依赖包下载.vendor目录下面; 加上-g参数,可以把依赖包下载到GOPATH目录中。
gopm get -g golang.org/x/net使用goproxy
Go的1.11版本以后 可以设置GOPROXY这个变量,来设置代理。 如果你自己有代理服务器就可以把这个环境变量设置成自己的代理。 首先开启go module支持:
在Mac/linux下执行:
export GO111MODULE=onWindows平台执行:
SET GO111MODULE=on2019.6.10更新:goproxy.cn
我们这里以为例:
在Mac/linux下可以执行以下命令来设置:
export GOPROXY=Windows平台在cmd执行以下命令来设置:
SET GOPROXY=""或者在PowerShell中执行:
C:\> $env:GOPROXY = ""Go1.13 的方式
执行:
go env -w GOPROXY=,direct原文链接:
本文作者:李文周,原创授权发布