go mod环境搭建

科工人 等级 123 0 0

前言

go mod 是golang最新的模块依赖管理的工具,推荐使用。

go 1.11通过设置环境变量GO111MODULE来决定是否启用
go1.13已经默认支持,以下以1.13为例

配置环境变量

goproxy :设置拉取依赖包的代理
gopath: 用了go mod为什么还需要配置gopath呢? go mod download之后会把依赖的包下载到$GOPATH/pkg/mod,可以理解为下载路径

开始

创建新项目

image.png

goland 新建项目的时候可以直接指定使用go mod模式,创建完成后就有go.mod文件

另外也可以直接创建一个空的项目目录,之后再go mod init XXXX,也会生成go.mod

  • go mod init XXXX 初始化项目,将项目的初始信息写入go.mod,里面有xxxx的项目名和go版本号,注意:XXXX是项目名,不是路径

旧项目

外部导入的项目,如果原来就是go mod模式,在设置里面开启go mod检查依赖

image.png

如果原来不是go mod包管理,修改目录结构之后,依然要go mod init XXXX,然后go mod tidy,
有时代码中import的路径也需要修改。

下载依赖包

  • 直接在代码中import
![](https://img-hello-world.oss-cn-beijing.aliyuncs.com/3000058710287312640f63b0b417c0dc.png)

image.png
  • 之后打开命令行 : go mod tidy 就会下载依赖(默认下载release版本),直接使用就可以了

关于命令行:golang里面可以直接打开命令行

image.png

在哪个目录右键,命令行当前路径就在哪个目录下,go build,go run也可以直接使用

vs code也有一样的命令行

go mod命令

  • go mod init # 初始化当前目录为模块根目录,生成go.mod, go.sum文件
  • go mod download # 下载依赖包
  • go mod tidy #整理检查依赖,如果缺失包会下载或者引用的不需要的包会删除
  • go mod vendor #复制依赖到vendor目录下面
  • go mod 可看完整所有的命令
  • go mod graph 以文本模式打印模块需求图
  • go mod verify 验证依赖是否正确
  • go mod edit 编辑go.mod文件

以上是基本使用,go mod出彩的地方在于版本管理。
一种是go get 的时候指定版本,另外可以在go.mod文件中 对某个依赖进行版本替换。

预览图
收藏
评论区