0%

2023-12-17 记一次 Golang 因镜像源配置导致的构建失败

2023-12-17 记一次 Golang 因镜像源配置导致的构建失败

废话少说,直接上解决方案

1
2
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

是的没错,就是换一个镜像源。

在之前的配置是https://mirrors.aliyun.com/goproxy/,direct,一直因为找不到依赖而报错,具体报错如下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
+ go build main.go
go: downloading github.com/gin-gonic/gin v1.9.1
go: downloading github.com/gin-contrib/sse v0.1.0
go: downloading github.com/mattn/go-isatty v0.0.19
go: downloading golang.org/x/net v0.10.0
go: downloading github.com/go-playground/validator/v10 v10.14.0
go: downloading github.com/pelletier/go-toml/v2 v2.0.8
go: downloading github.com/ugorji/go/codec v1.2.11
go: downloading google.golang.org/protobuf v1.30.0
go: downloading gopkg.in/yaml.v3 v3.0.1
go: downloading golang.org/x/sys v0.8.0
go: downloading github.com/gabriel-vasile/mimetype v1.4.2
go: downloading github.com/go-playground/universal-translator v0.18.1
go: downloading github.com/leodido/go-urn v1.2.4
go: downloading golang.org/x/crypto v0.9.0
go: downloading golang.org/x/text v0.9.0
go: downloading github.com/go-playground/locales v0.14.1
/root/go/pkg/mod/github.com/go-playground/universal-translator@v0.18.1/errors.go:7:2: zip: not a valid zip file
/root/go/pkg/mod/github.com/go-playground/validator/v10@v10.14.0/baked_in.go:23:2: zip: not a valid zip file
/root/go/pkg/mod/golang.org/x/net@v0.10.0/idna/idna10.0.0.go:26:2: zip: not a valid zip file
/root/go/pkg/mod/golang.org/x/net@v0.10.0/idna/idna10.0.0.go:27:2: zip: not a valid zip file
/root/go/pkg/mod/golang.org/x/net@v0.10.0/idna/idna10.0.0.go:28:2: zip: not a valid zip file
/root/go/pkg/mod/github.com/gin-gonic/gin@v1.9.1/binding/protobuf.go:12:2: zip: not a valid zip file

可以看到一直报not a valid zip file这个错误。

但我在本地又是可以成功的。

结果排查了半天,是镜像配置不一样!

修改镜像配置后解决问题。

我个人猜测,问题出现的原因是阿里云这边的 Golang 镜像缺少一些包,所以下载依赖失败了。

没想到居然被这么简单的问题折腾了半天!我感觉还是要怪坑爹的阿里云!

总结

在构建 Golang 项目时,遇到了因镜像源配置问题导致构建失败的情况。原本使用的镜像源是https://mirrors.aliyun.com/goproxy/,direct,但一直报错找不到依赖。经过排查发现,问题是镜像源缺少一些包,因此无法下载依赖。解决方案是将镜像源更换为https://goproxy.cn,direct。修改镜像源后,问题得到解决。这个问题花费了一些时间,但最终发现是一个简单的配置问题。总结起来,要注意镜像源的配置,确保能够正常下载依赖。

【总结由 Chat LangChain 生成】

本文作者:草梅友仁
本文地址: https://blog.cmyr.ltd/archives/9a8bee73.html
版权声明:转载请注明出处!

坚持原创技术分享,您的支持将鼓励我继续创作!