Go 1.13+默认启用Go Module,需配置GOPROXY使用国内镜像(如https://goproxy.cn)提升下载速度与稳定性,并确保GO111MODULE=on以启用模块功能。
Go 1.13 及以后版本默认启用了 Go Module,并通过 GOPROXY 环境变量控制模块代理。国内直接访问官方 proxy.golang.org 常常超时或失败,设置国内镜像可显著提升 go get、go mod download 等操作的速度和稳定性。
目前稳定、同步及时的主流镜像有:
仅对当前命令行窗口有效,适合快速测试:
export GOPROXY=https://goproxy.cn,direct
注意末尾的 ,direct 表示:当镜像中找不到模块时,回退到直接从模块源(如 GitHub)拉取,避免私有模块无法下载。
将环境变量写入 shell 配置文件,重启终端或执行 source 生效:
echo "export GOPROXY=https://goproxy.cn,direct" >> ~/.zshrc && source ~/.zshrc
echo "export GOPROXY=https://goproxy.cn,direct" >> ~/.bashrc && source ~/.bashrc
[System.Environment]::SetEnvironmentVariable('GOPROXY
','https://goproxy.cn,direct','User')
运行以下命令查看当前 GOPROXY 配置:
go env GOPROXY
输出应为 https://goproxy.cn,direct 或你设置的其他地址。再尝试拉一个模块测试:
go mod init example.com/test && go get github.com/gin-gonic/gin@v1.9.1
若能快速完成下载并生成 go.sum,说明配置成功。
不复杂但容易忽略的是:确保没有在项目目录下或全局设置了 GO111MODULE=off,否则 Module 功能被禁用,GOPROXY 也不会起作用。推荐始终开启:go env -w GO111MODULE=on。