go 编译超时解决

转载请注明出处:

  在编译go项目时,遇到依赖下载超时,异常输出如下:

复制代码
CGO_ENABLED=0 GOOS=linux GO111MODULE=on go build -a -ldflags '-extldflags "-static"' -o ../../bin/gobmp ./gobmp.go
go: google.golang.org/protobuf@v1.30.0: unrecognized import path "google.golang.org/protobuf": https fetch: Get "https://google.golang.org/protobuf?go-get=1": dial tcp 142.251.211.241:443: i/o timeout
go: google.golang.org/protobuf@v1.30.0: unrecognized import path "google.golang.org/protobuf": https fetch: Get "https://google.golang.org/protobuf?go-get=1": dial tcp 142.251.211.241:443: i/o timeout

  Go 在尝试访问模块 google.golang.org/protobuf 的时候出现了超时。这个问题通常可以归因于以下几个因素:网络连接问题、DNS 解析问题、被防火墙阻挡、或者其他网络配置相关的问题。

问题定位

1.网络问题 :

  确保可以访问 google.golang.org。尝试使用网络工具检查连接:

复制代码
ping google.golang.org  

  或者

复制代码
curl -v https://google.golang.org/protobuf  

  如果这些命令返回错误,那么网络连接本身可能存在问题。

2.DNS 问题 :

  如果你的 DNS 服务器有问题,可以尝试更换 DNS 服务器。例如,更换为 Google 的 DNS:

复制代码
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf  

  然后再尝试 build。

3.防火墙设置

  确保没有防火墙或网络策略阻止访问这些地址。

代理连接

  如果以上方法无法解决问题,下面是一些可以使用的 Go 代理(这些代理可以帮助你在访问 Go 模块时使用不同的网络路径):

Go 中国代理 (如果你在中国大陆):

复制代码
export GOPROXY=https://goproxy.cn  

Goproxy.io (公共代理):

复制代码
export GOPROXY=https://goproxy.io,direct  

Golang Proxy (Google 官方代理):

复制代码
export GOPROXY=https://proxy.golang.org,direct  

其他公共代理 :

可以这样设置:

复制代码
export GOPROXY=https://mirrors.aliyun.com/goproxy,direct  

禁用 checksum 数据库 (如果你无法访问官方代理):

复制代码
export GOSUMDB=off  

手动获取模块 :

复制代码
go get google.golang.org/protobuf@v1.30.0  
相关推荐
孔令飞5 小时前
知己知彼,百战不殆:AI SKILL 实现原理剖析
云原生·go·ai编程
孔令飞1 天前
工具分享:OneX AI 工具安装、配置及功能介绍
云原生·go·ai编程
喵了几个咪1 天前
GoWind Admin 拆解:一个 Sender 接口接 39 个通知渠道
微服务·golang·go·1024程序员节·admin·gowind
l1t1 天前
在windows中测试musql数据库
数据库·sqlite·go·1024程序员节
用户360055579001 天前
Kestrel_VLLM - 19 · KV 复用迁移到 GPU(上):per-state 镜像与同类静默分叉
go
我的div丢了肿么办2 天前
go语言对路由中的业务逻辑进行抽离
后端·go
孔令飞2 天前
1024程序员节,OneX平台送3套免费Go实战项目
云原生·go·ai编程
我不会起名字3223 天前
gRPC 拦截器写错:metadata 透传与超时注入的 3 个坑
微服务·go·grpc·拦截器
用户4015823324623 天前
对话一长,AI 就忘了你说过的话?Claude Code、Codex、Aider、WES Code 怎么压缩上下文
人工智能·go·ai编程
我的div丢了肿么办3 天前
go语言抽离路由文件以及对路由进行分组
后端·go