首页 > 其他分享 >第九章(包结构)【包管理】

第九章(包结构)【包管理】

时间:2023-02-09 22:26:23浏览次数:40  
标签:GOPATH GO111MODULE 管理 第九章 GOMODULE 使用 go mod 结构

GOPATH和GOMODULE

GOPATH和GOMODULE都是go的包管理工具

  • 在Go创世初期时使用go get 来获取所有源并将其存储在 $GOPATH/src中(GOPATH模式)。 没有版本控制

  • 在Go 1.11引入了GoMODULE。 Go Modules不使用GOPATH存储软件包。将其存储在$GOPATH/pkg/mod。使用go.mod文件标记软件包的版本并追踪每个包的版本

  • 所以说go就有了两个包管理工具,为了兼容老项目,所以两个包管理方式就并存了。

  • go env 有GO111MODULE配置项

    • GO111MODULE=on时:强制使用GoMODULE
    • GO111MODULE=off时:强制使用GOPATH
    • GO111MODULE=auto(默认)时:这时候就看项目路径了,当项目路径在GOPATH目录时则使用GOPATH模式,否则使用GOMODULE.

GO111MODULE=auto可能版本不同语意稍有不同,go1.13通过判断go.mod文件是否存在来决定使用哪个模式

标签:GOPATH,GO111MODULE,管理,第九章,GOMODULE,使用,go,mod,结构
From: https://www.cnblogs.com/badake/p/17107243.html

相关文章