Go1.11版本开始支持包依赖管理工具,新增了GOPROXY环境变量,用于配置依赖包下载代理,通过代理配置可以实现翻墙下载一些所需的依赖包,可以说相当实用
Go1.11 版本开始支持包依赖管理,无需自行下载依赖到 GoPath 的 src 下,相当好用。
go get / go mod 命令下载依赖时,经常需要访问 github/golang.org 等网站。
如果公司的网络不具备访问这些网站时,初始化工程就会变得异常的困难。
因此,配置代理就显得非常使用。
目前比较常见的代理网站如下,各网站都提供了详细的配置说明。
// 打开包管理能力
go env -w GO111MODULE=on
// 配置代理地址
go env -w GOPROXY=https://goproxy.cn,direct
// 关闭代理
go env -u GOPROXY
// 查看go环境变量
go env
// 以JSON格式输出go环境变量
go env -json
注意需要是 1.11+
// 打开包管理能力
export GO111MODULE=on
// 配置代理地址
export GOPROXY=https://goproxy.cn
// 关闭代理
export GOPROXY=
一般很少这么用。
go mod 提供了 replace 方式来指定替换包的地址。
如果第三方包中引用墙外的包,就需要手动修改他们了,不如代理方式方便。
module github.com/exercise
require (
golang.org/x/text v0.3.0
gopkg.in/yaml.v2 v2.1.0
)
replace (
golang.org/x/text => github.com/golang/text v0.3.0
)
需要注意 Go 1.13+ 的配置方式和之前的有所区别即可。
不再是取外部的公共变量,而是 Go 特有的环境变量。
温馨提示:系统将通过浏览器临时记忆您曾经填写的个人信息且支持修改,评论提交后仅自己可见,内容需要经过审核后方可全面展示。