一文说清GO环境变量-GO111MODULE、GOROOT、GOPATH、GOBIN、GOPRIVATE

本文介绍了Go语言的开发模式变化,从GOPATH模式到go module模式,详细解析了GO111MODULE、GOROOT、GOPATH、GOBIN和GOPRIVATE等环境变量的作用。在go module模式下,即使不需要GOPATH,但其他环境变量仍有其重要性,如GOROOT用于存放Go发行版文件,GOBIN用于存放可执行程序,而GOPRIVATE则用于配置私有仓库的导入路径。
摘要由CSDN通过智能技术生成

搭建环境:mac OS(linux系统类似)
go version:1.16

Go的开发模式-GO111MODULE

介绍GO环境变量之前,必须先介绍Go开发模式的重大变化。

go有两种开发模式,1.13前的GOPATH开发模式和之后的go module开发模式
go module开发模式不再需要将项目代码存放在$GOPATH/src下,工程代码可以放在任意位置。

第三方库的代码、缓存、sumdb等仍然在$GOPATH下。

从GOPATH开发模式到go module开发模式

go module开发模式取代GOPATH开发模式,是为了在go的整个开发生态中引入包版本概念。如不同工程项目都要使用gin,但是一个使用gin@1.1.1,另一个使用gin@1.5.1。这种区分在GOPATH模式下是无法实现的。

GOPATH模式到go module开发模式是循序渐进的,其中GO111MODULE变量起到区分本地GO开发模式的作用。

Go 1.11 开始,引入GO111MODULE环境变量,默认设置为GO111MODULE=auto。当GO111MODULE=off时,使用GOPATH开发模式;GO111MODULE=on时,使用go module开发模式
Go 1.13开始,删除了项目目录必须在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值