Mac M1下go get命令卡顿报错,求解决方案
解决Go get依赖下载卡顿/报错的方案
针对你在Mac M1上遇到的Go依赖下载问题,以下是几个直接可行的解决步骤:
配置Go模块代理
国内访问GitHub的网络链路不稳定是这类问题的常见原因,直接配置国内可用的Go代理即可解决:
临时生效(当前终端会话):export GOPROXY=https://goproxy.io,direct永久生效(zsh用户执行,bash用户替换为
~/.bash_profile):echo "export GOPROXY=https://goproxy.io,direct" >> ~/.zshrc source ~/.zshrc配置完成后重新执行
go get "github.com/go-playground/validator/v10"测试。检查并重置Git代理设置
Go get底层依赖Git拉取代码,若Git代理配置异常会引发连接问题:- 查看当前Git代理配置:
git config --global --get http.proxy git config --global --get https.proxy- 若存在异常代理地址,执行以下命令清除:
git config --global --unset http.proxy git config --global --unset https.proxy清理Go模块缓存
缓存损坏可能导致下载异常,执行命令清理缓存:go clean -modcache清理完成后重新尝试下载依赖。
检查系统防火墙/安全软件
Mac自带防火墙或第三方安全软件可能拦截Go的网络请求,暂时关闭防火墙(系统设置-网络-防火墙)或退出安全软件,再测试下载操作。手动下载依赖到模块缓存
如果以上方法均无效,可手动克隆依赖到Go模块缓存目录:- 创建对应版本的缓存目录(替换版本号为你需要的版本):
mkdir -p $GOPATH/pkg/mod/github.com/go-playground/validator@v10.14.0- 克隆仓库到该目录:
git clone https://github.com/go-playground/validator/v10.git $GOPATH/pkg/mod/github.com/go-playground/validator@v10.14.0- 进入项目目录执行
go mod tidy拉取剩余依赖。
内容的提问来源于stack exchange,提问作者alramdein
相关产品推荐
相关产品推荐

