本文作者:陈进坚
个人博客:https://jian1098.github.io
CSDN博客:https://blog.csdn.net/c_jian
简书:https://www.jianshu.com/u/8ba9ac5706b6
联系方式:jian1098@qq.com
模块是相关Go包的集合。modules是源代码交换和版本控制的单元。 go命令直接支持使用modules,包括记录和解析对其他模块的依赖性。modules替换旧的基于GOPATH的方法来指定在给定构建中使用哪些源文件。
注意:开启go module
需要go1.11
及以上版本
打开模块
set GO111MODULE=on //windows
export GO111MODULE=on //linux
初始化
执行下面的命令生成go.mod
文件
go mod init 项目名
执行下面的命令创建vendor
目录存放并下载依赖
go mod vendor
执行完成会生成go.sum
文件来记录所依赖的项目的版本的锁定
然后在需要使用包的文件中正常import
即可
引入新的包
在需要使用包的文件中import
,然后再次执行下面的命令即可
go mod vendor
依赖包整理
执行下面的命令可以将没用到的依赖包清除
go mod tidy
其他命令
go mod 有以下命令:
命令 | 说明 |
---|---|
download | download modules to local cache(下载依赖包) |
edit | edit go.mod from tools or scripts(编辑go.mod |
graph | print module requirement graph (打印模块依赖图) |
init | initialize new module in current directory(在当前目录初始化mod) |
tidy | add missing and remove unused modules(拉取缺少的模块,移除不用的模块) |
vendor | make vendored copy of dependencies(将依赖复制到vendor下) |
verify | verify dependencies have expected content (验证依赖是否正确) |
why | explain why packages or modules are needed(解释为什么需要依赖) |
网友评论