Go 1.6 引入了内置的供应商机制,可以简化依赖管理。通过供应商,依赖项直接包含在项目的目录中,允许离线构建和对特定版本进行更精细的控制。
要使用 ./vendor,请先复制将所需的依赖项从 $GOPATH/src 放入供应商文件夹中。例如,如果你想使用 GitHub 的 [goji](https://github.com/zenazn/goji) 路由包:
mkdir -p $GOPATH/src/your-project/vendor/github.com/zenazn/goji cp -r $GOPATH/src/github.com/zenazn/goji/ $GOPATH/src/your-project/vendor/github.com/zenazn/goji
复制依赖项后,Go 工具(如 go build 和 go) run 将首先自动检查 ./vendor 是否有所需的包。如果找不到,它们将回退到标准的 $GOPATH/src 目录。
虽然手动复制依赖项对于小型项目来说是可行的,但依赖项管理工具提供了一种方便的方法从供应商文件夹安装和管理依赖项的方法。两个流行的选项是:
这些工具检查您的项目,识别其依赖项,并将它们从 $GOPATH/src 复制到当前目录的供应商文件夹。例如,使用 Godep:
godep save ./...
供应允许您有选择地仅在供应商文件夹中包含特定依赖项。这种方法可确保您将必要的软件包锁定到特定版本,同时允许通过 go get 更新其他软件包。
虽然依赖项管理很重要,但避免过度使用它也很重要。一概而论地供应所有依赖项可能会阻碍定期更新,并可能带来不必要的风险。
以上是Go 1.6内置的Vendoring机制如何简化依赖管理?的详细内容。更多信息请关注PHP中文网其他相关文章!