일부 불가항력으로 인해 go get
명령을 사용하여 패키지를 설치할 때 시간 초과가 자주 발생합니다. 중국 문제에요. 이 문서에서는 몇 가지 일반적인 솔루션을 소개합니다. go get
命令安装包时会经常会出现timeout的问题。本文介绍几个常用的解决办法。
从github克隆
golang在github上建立了一个镜像库,如https://github.com/golang/net
就对应是 https://golang.org/x/net
的镜像库。 要下载golang.org/x/net
包,可以在本地创建包的目录后使用git clone
来拉取相应包的源代码文件,具体操作如下:
mkdir -p $GOPATH/src/golang.org/x cd $GOPATH/src/golang.org/x git clone https://github.com/golang/net.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=on
Windows平台执行:
SET GO111MODULE=on
2019.6.10更新:goproxy.cn
我们这里以https://goproxy.cn
为例:
在Mac/linux下可以执行以下命令来设置:
export GOPROXY=https://goproxy.cn
Windows平台在cmd
执行以下命令来设置:
SET GOPROXY="https://goproxy.cn"
或者在PowerShell
github에서 복제
golang은https://에 해당하는 <code>https://github.com/golang/net
과 같은 github에 미러 라이브러리를 구축했습니다. /golang.org/x/net미러 라이브러리. golang.org/x/net
패키지를 다운로드하려면 로컬에서 패키지 디렉터리를 만들고 git clone
을 사용하여 해당 패키지의 소스 코드 파일을 가져올 수 있습니다. 작업은 다음과 같습니다: