如何为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