每次用go装个东西,大多都会碰到golang.org/xxx下载依赖的问题,现在提供一种自己用着还不错的解决方案,那就是使用GOPROXY和go module。我使用的go版本是go1.12。
go代理有很多,读者可以搜一下国内goproxy,哪个好用用哪个,我用的是https://goproxy.io,这个。
1、linux下使用goproxy
在linux下,编辑/etc/profile,在最后加上
export GOPROXY=https://goproxy.io,direct
wq保存退出,然后执行source /etc/profile
更新一下。
然后当你需要go get少量的依赖的时候,在每个go get前边加个东西,如下:
GO111MODULE=on go get github.com/xx/x/x/
最后那个就是你要get的依赖。
同理,如果你需要使用go mod下载大量依赖的时候,需要手动把全局的GO111MODULE打开,即用export的方式:
export GO111MODULE=on
然后你可以执行go env
查看你设置的GO111MODULE和GOPROXY是否都设置成功。
在然后你就可以开心的使用go mod download命令下载了。下载完之后可以在把GO111MODULE置空,即:
export GO111MODULE=
2、 windows下使用GOPROXY
采用修改环境变量的方式,在我的电脑右击-属性-高级系统设置-环境变量里添加GOPROXY。
然后手动将GO111MODULE设置为on,命令行:
set GO111MODULE=on
然后就可以开心的go mod download了。用完再set 为 auto或者off即可。