使用go get 命令下载gin框架时报错,如下:
C:\Users\seventh>go get -u github.com/gin-gonic/gin
go: downloading github.com/gin-gonic/gin v1.7.7
go get: github.com/gin-gonic/gin@v1.7.7: verifying module: github.com/gin-gonic/gin@v1.7.7: Get "https://sum.golang.org/lookup/github.com/gin-gonic/gin@v1.7.7": dial tcp 142.251.42.241:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
报错产生原因有两个:
第一个:通过查找原因,gin的个别包无法下载是被墙了
第二个:go在1.13版本后,默认开启了GOSUMDB=sum.golang.org,而这个网址sum.golang.org 在国内是无法访问,故需要关闭
解决办法:
第一步:关闭GOSUMDB 命令:
go env -w GOSUMDB=off
第二步:更换国内源,彻底解决配置代理也无法下载个别包的问题 (因为在执行go get github.com/gin-gonic/gin时我是配置了goproxy的,依旧无法下载个别包,所以彻底更换国内源)
命令:
go env -w GO111MODULE=on
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
设置完后结果呈现:
总结:
关闭GOSUMDB=off,更换国内代理源即可完美解决下载问题,设置完后,再执行
go get github.com/gin-gonic/gin
再执行一下,所有gin相关的包均下载成功