栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

go mod 遇到的问题:permission denied & time out

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

go mod 遇到的问题:permission denied & time out

使用go mod出现permission denied的问题,查找资料后发现是因为没有权限修改GOPATH链接的地址(module存储的地方),按常规操作直接在命令前加了sudo,此时不再出现权限问题(不当操作,请勿模仿) 。

命令行执行go env展示go相关的环境变量,其中GOROOT表示安装路径,GOPATH路径存放sdk以外的第三方类库

以为没问题了但在下载module时出现time out问题,进一步查资料发现是GOPROXY指向的网址ping不通,网上建议是改成中国的镜像网站(https://goproxy.cn等)
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct

GOPROXY也在go env列出的环境变量之中,默认为https://proxy.golang.org,direct,可以通过go env -w更改为中国镜像网站
注意需要保证go module已开启,可通过go env -w GO111MODULE=on进行设置

关于GOPROXY和国内镜像网站的具体信息可以查看干货满满的 Go Modules 和 goproxy.cn

但是通过go env -w修改后发现修改未生效,go仍旧按原网址下载module,之后尝试过export甚至直接修改~./profile文件均无效。后发现是因为sudo的问题,我修改的代理地址(GOPROXY)是user环境,但sudo是在root环境下运行的,导致修改未生效。所以解决permission denied的正确做法应该是修改GOPATH到一个用户目录(用户有权限修改)。同样可以通过go env -w进行修改。
具体可参考问题:设置了GOPROXY还是出现i/o timeout #93

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/908603.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号