使用 govendor 添加外部包
Govendor 是一个工具,用于以与 golang 的 vendoring 兼容的方式将第三方包导入你的代码库。
比如说你正在使用第三方包 bosun.org/slog
:
package main
import "bosun.org/slog"
func main() {
slog.Infof("Hello World")
}
你的目录结构可能如下所示:
$GOPATH/src/
├── github.com/me/helloworld/
| ├── hello.go
├── bosun.org/slog/
| ├── ... (slog files)
然而,克隆 github.com/me/helloworld
的人可能没有 $GOPATH/src/bosun.org/slog/
文件夹,导致他们的构建因缺少包而失败。
在命令提示符下运行以下命令将从 Go 包中获取所有外部包,并将所需的位打包到供应商文件夹中:
govendor add +e
这指示 govendor 将所有外部包添加到当前存储库中。
你的应用程序的目录结构现在看起来像:
$GOPATH/src/
├── github.com/me/helloworld/
| ├── vendor/
| | ├── bosun.org/slog/
| | | ├── ... (slog files)
| ├── hello.go
克隆你的存储库的人也将获取所需的第三方软件包。