• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Go Modules( vgo ) 的介绍与使用

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

vgo 简介:

vgo 是新一代的go项目包管理工具,在 go 1.11中已经支持,现在很多第三方库都使用vgo作为包管理工具,比如 echo框架
vgo官方介绍:wiki

使用环境:

  1. go 1.11及以上版本
  2. 在最新的go 版本中(1.12.4) 仍然需要配置环境变量 GO111MODULE=on 才能使用
  3. 下面所述的所有环境变量的设置都依赖于vgo未正式发布,仍然需要手动设置环境变量才能使用

使用vgo创建项目

本文以JetBrains公司的GoLand使用为例,版本为2019.1,2018.3的版本也有这个功能

项目目录中可以看到有个go.mod的文件 初始包含了module和go版本信息

当项目中需要获取第三方库时 仍然可以使用go get命令 ,比如 go get github.com/labstack/echo/v4 ,默认的将会拉取最新的包,如果需要指定版本则在后面加上@+版本号 比如,go get github.com/labstack/echo/[email protected] ,当你尝试用这条命令拉取时就会发现报错,应为echo的v4.15的包依赖 golang.org/x/ 下的包,由于某些原因拉取不到,这个时候就要介绍下go.mod下的三个关键字了

好了,介绍完上面的三个关键字,现在就能编辑我们的go.mod文件了,内容如下: 后面的v0.0.0-20190531175056-4c3a928424d2 其实是 latest

编辑完go.mod文件,保存更新后 ,项目目录下回多一个go.sum的文件,该文件用于记录每个依赖库的版本和哈希值。
第三方依赖包会保存到gopath->pkg->mod 目录下

项目发布

项目完成以后需要发布到服务器,有几点要注意,把项目上传到服务器以后直接go build 会报错,找不到依赖包,这是因为服务器上没有设置环境变量 export GO111MODULE=on 即可,和dep的包管理类似,第三方依赖包需要使用dep save命令将项目依赖保存到vender目录下,而vgo会在go build时,如果本地没有依赖库会自动拉取需要的依赖库。
注意:如果使用的是docker,需要在Dockerfile中设置环境变量 ENV GO111MODULE=on 否则项目报错


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Pokemon Go将在日本发布 网络安全公司呼吁防范虚假软件发布时间:2022-07-10
下一篇:
go 并发发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap