如何为go-get指定安装依赖项

如何为go-get指定安装依赖项,go,dependency-management,Go,Dependency Management,我可以指定在通过导入项目签出项目后由go-get下载的依赖项。我甚至可以强制下载代码中未使用的包,方法是导入它们以产生副作用: import\uhub.com/jteeuwen/go bindata“ 此外,在shell上,我可以通过在路径后使用省略号安装一个带有go-get的程序: $ go get github.com/jteeuwen/go-bindata/... 然而,我似乎无法将这两种技术结合起来: 导入u“github.com/jteeuwen/go bindata/…” 我想告诉

我可以指定在通过导入项目签出项目后由
go-get
下载的依赖项。我甚至可以强制下载代码中未使用的包,方法是导入它们以产生副作用:

import\uhub.com/jteeuwen/go bindata“

此外,在shell上,我可以通过在路径后使用省略号安装一个带有
go-get
的程序:

$ go get github.com/jteeuwen/go-bindata/...
然而,我似乎无法将这两种技术结合起来:

导入u“github.com/jteeuwen/go bindata/…”


我想告诉
go-get
对于构建(实际上
go-generate
ing)这个项目,必须安装。是否可以在我使用的一个项目中指定安装依赖项?

。根据其网页:

此工具假定您在标准的Go工作区中工作,如下所示: 如中所述。我们希望戈德普建造 on Go 1.4*或更新版本,但您可以在任何与 转到1或更新版本

您将在JSON文件中包含依赖项,就像Node、Bower等一样。。。它的使用非常简单

在您的情况下,假设您已经
获取了包,请运行:

godep save

这将生成包含所有其他依赖项的JSON文件,并保存到项目中的文件夹中。多亏了它,我才能够交叉编译我的项目。

回答你的问题:没有

但是,您可以将bindata添加到您的项目中,这将在
go-get
ing您的项目之后使其可用

但是,关于何时以及为什么运行
go generate
,可能会有一点困惑:
go generate
(据我所知)的预期用途是让包或命令作者在开发阶段生成代码。由go{build,install,get}签入并“正常”处理的代码。因此,您可以运行
go generate
,签入生成的内容,并让包的用户
go get
it,而不运行go generate。他们不需要这样做,代码在
get
ing期间以正确的签入版本提供


对于最终用户必须执行的更复杂的构建:使用makefile或类似的工具,因为这样的东西不在
的范围内,go-get

难道这不意味着所有资产都有两次,一次编码,一次原始?
godep save