Go环境构建基础

1.Go 11 之前,依赖GOPATH

2.Go 11开始,引入module 

GO111MODULE的选项有三个,下面是三个选项的解释:

off :go命令从不使用新模块支持。它查找vendor 目录和GOPATH模式”。
on :go命令需要使用模块,go 会忽略 $GOPATH 和 vendor 文件夹,只根据go.mod下载依赖。
auto :或未设置,则go命令根据当前目录启用或禁用模块支持。仅当当前目录位于$GOPATH/src之外并且其本身包含go.mod文件或位于包含go.mod文件的目录下时,才启用模块支持。
————————————————
版权声明:本文为CSDN博主「idwtwt」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/idwtwt/article/details/90545429

使用go get获取的包放在$GOPATH/src/目录下,使用go mod下载的依赖包放在GOPATH/pkg/mod/目录下,所有项目共享

3.Go 13 开始

export GOPROXY=“!!!!”
export GONOPROXY=1222

Go 1.13 为 GOPROXY 新增的“代理列表”特性来为 goproxy.cn 做一个 fallback 选项,也就是 direct(直接从目标模块源头抓取),它就是解决私有库的一种途径,但并不是一个完美的解决方案。为此,Go 1.13 还推出了一个 GONOPROXY 环境变量(详见: https://golang.org/cmd/go/#hdr-Environment_variables ),通过设置它我们可以实现控制让哪些 module path 忽略 GOPROXY,无脑回源。比如 GONOPROXY=*.corp.example.com 就意味着 go 在抓取所有 corp.example.com 的三级子域名下的所有模块时都将忽略 GOPROXY 设置直接回源到目标模块的原地址。

你可能感兴趣的:(测试开发)