golang vendor机制
- golang vendor机制用来解决第三方包依赖问题.
- golang vendor机制的开启
- golang1.5中需要设置环境变量 GO15VENDOREXPERIMENT=1
- golang1.6中 默认已经设置 GO15VENDOREXPERIMENT=1 (当前版本)
- golang1.7中 将默认开启vendor并取消 GO15VENDOREXPERIMENT变量
- golang vendor机制原理
将第三方依赖放入当前项目vendor目录中, 编译的时候从vendor目录中查找依赖而不从GOPATH/src中对应目录中查找。
glide 第三方依赖管理工具
glide是一个支持vendor的依赖管理工具
-
glide 的安装
go get -u github.com/Masterminds/glideUbuntu:
sudo add-apt-repository ppa:masterminds/glide && sudo apt-get update
sudo apt-get install glideMAC:
brew install glide -
glide的使用流程
- $ glide create # Start a new workspace
- $ open glide.yaml # and edit away!
- $ glide get github.com/Masterminds/cookoo # Get a package and add to glide.yaml
- $ glide install # Install packages and dependencies
- Coding..........
- $ go build # Go tools work normally
- $ glide up # Update to newest versions of the package
-
下载指定版本的第三方依赖
$ glide get github.com/Masterminds/semver#~1.2.0 -
相关网址
https://glide.readthedocs.io/en/latest/getting-started/
https://github.com/Masterminds/glide