每次用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置空,即:
2、 windows下使用GOPROXY
采用修改環境變量的方式,在我的電腦右擊-屬性-進階系統設定-環境變量裡添加GOPROXY。
然後手動将GO111MODULE設定為on,指令行:
set GO111MODULE=on
然後就可以開心的go mod download了。用完再set 為 auto或者off即可。