golang 依赖管理之 mod

go 很早就考虑了依赖管理的问题,内置 go get 命令,可以直接获取对应的依赖,非常方便,但是有一个巨大的缺陷,没有版本的维护和管理,而版本不一致可能会导致各种兼容性问题,因此出现了很多第三方依赖管理工具,depglide 就是其中的佼佼者,到了 go 1.11 官方终于推出了自己的依赖管理工具 mod,并内置在 go 版本中,go mod 使用简单,功能强大,并且能自动兼容大多数之前的第三方工具,大量优秀的开源库都已经切换到了 go mod,大有一统江湖之势

GO111MODULE

一个最大的变化是 golang 的项目终于不再依赖 $GOPATH 目录了,之前的项目由于 import 机制问题,所有项目都位于 $GOPATH/src 目录下,虽然也没有太大的问题,但总是让人感觉很怪,go 1.11 终于调整了这个问题,将代码从 $GOPATH 中迁出了,为了兼容之前研发模式,也仍然支持放到 $GOPATH 下,通过 GO111MODULE 环境变量控制

  • GO111MODULE=off: 关闭 mod,查找 vendor 目录和 $GOPATH 路径下的依赖
  • GO111MODULE=on: 开启 mod, 仅根据 go.mod
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值