这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天
Go项目依赖详解
Go 项目中的.go
文件在查找依赖的顺序:
- 在当前包下的 vendor 目录中查找;
- 若vendor 没找到,在 GOPATH 中查找;
- 都没找到最后在 GOROOT 中查找。
govendor只是用来管理项目的依赖包,如果GOPATH中本身没有项目的依赖包,则需要通过go get
先下载到GOPATH中,再通过govendor add+external拷贝到vendor目录中。
- 使用Govendor之前,需要安装Govendor
go get -u github.com/kardianos/govendor
- 在使用1的命令之前可能会报错,可以通过配置git的环境变量到path,然后使用命令行下载,手动将
github.com/kardianos/govendor
下载到GOPATH的src中。 - go build编译
github.com/kardianos/govendor
,将生成的可执行文件,通过go install会放到bin下。 - 在src下使用govendor init命令,生成vendor目录。
- go mod vendor 将新增的依赖包自动写入当前项目的 vendor 目录。
- go mod tidy 增加缺少的module,删除无用的module,增加减少的路径在GOPATH路径下的pkg\mod目录。
- go install 把当前工程的可执行文件放到GOPATH路径下的bin目录。