问题标签 [govendor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - govendor 恐慌:空包路径
你如何修复空包路径错误?我不清楚哪个包有问题或如何解决。
vendor/vendor.json
json 文件。
完整的堆栈跟踪。
go - 使用其他项目的供应商?
我将其他项目(Origin)供应商目录用于小型应用程序(因为他们使用旧版本的库并且它与当前版本不兼容)。但我得到这些错误:
如何使 govendor 和“代码”正确对待供应商目录?我在这里做错了什么?
代码示例:
它抱怨错误使用标志。
go - govendor 作为类型错误
出现错误:不能使用 *company/model 作为类型 *vendor/company/model
扁平供应商结构:供应商/公司/型号
文件导入“公司/型号”
go - 为什么“去供应商添加”不能与修订号一起使用
我收到一个编译错误,这让我相信我的供应商文件夹中有错误版本的库。第一项任务是确定库的哪个版本是正确的。我需要找到包含字符串“VolumeCreateRequest”的库源版本。为此,我使用了库根文件夹中的这个技巧:
从中我找到了版本哈希06f160237426e705ed214a4f087d4aeea32c0a8b
::
然后我尝试将该版本添加到我的供应商文件夹中
go vendor add github.com/docker/docker/...@06f160237426e705ed214a4f087d4aeea32c0a8b
但它不起作用。当我使用 git 检查库的版本时,它不会报告我刚刚获取的版本。
vendor.json 文件还包含错误的版本
那么这是什么一回事?仔细阅读文档后,我看到 go vender add只是默默地忽略了@06f160237426e705ed214a4f087d4aeea32c0a8b
我的 fetch URI 末尾的 。
正确的命令是支持 @version的 go vendor fetch
govendor fetch github.com/docker/docker/...@06f160237426e705ed214a4f087d4aeea32c0a8b
完成此操作的另一种方法是在您的 GOPATH 中(即不在您的供应商文件夹中)中 git checkout 您想要的库版本,然后govendor add
是您的 GOPATH 中的包
所以现在我检查了 git 版本,我们都很好。然后出现了下一个问题。我们的 generate.go 文件(由 调用go generate
)正在进入并用vendor.json
我的 GOPATH 上的内容覆盖我所需的版本。
我们的序列generate.go
是:
结果证明这是错误的,因为添加会覆盖我的更改,然后同步无效,因为 vendor.json 已经感染了错误的版本。
正确的顺序是这样的:
这样,您自定义的 vendor.json 将首先将供应商文件夹同步到所需的文件夹,然后才会下载外部和缺少的依赖项。
最后,一些依赖项实际上根本无法编译到平台特定的东西。为了解决这个问题,我在 generate.go 中添加这些行以删除那些损坏的依赖项,在我同步、添加、获取之后
go - Golang 供应商包和供应商的子包
情况:
假设我有一个名为mypackage
. 它公开了一个名为 的方法Build()
,该方法返回一个由名为 的第三方库公开的具体结构thirdpartypackage
,例如如下所示:
公开的包SharedStruct
是在内部出售的mypackage
,因为我想分发它并使该包独立。
问题:
导入mypackage
另一个项目并thirdpartypackage
在我的(集成)测试中使用后,我收到以下错误:
不能使用 XXXX(类型“github.com/mycompany/mymainproject/vendor/github.com/mycompany/mypackage/vendor/github.com/thirdcompany/thirdpartypackage-go”.Token)作为类型“github.com/empatica/mycompany/供应商/github.com/thirdcompany/thirdpartypackage”
基本上,编译器会区分我的库中的供应商第三方包和我放在主项目中的供应商包。
问题:
有没有办法解决这个问题,而不是像这里建议的那样从我的库中删除供应商的依赖项?我错过了什么吗?
go - govendor 是否自动包含传递依赖项?
假设我通过govendor add
or添加了一个新的依赖项 X govendor fetch
。这个依赖 X 依赖于 Y。
govendor 也会自动引入这些依赖项吗?或者我必须这样做govendor add Y
。
add
和之间的行为是否不同fetch
?
我在这里的任何文档中都找不到讨论的内容:https ://github.com/kardianos/govendor
或者通过运行govendor add --help
go - 在 govendor 中处理嵌套的“供应商”目录
我正在编写一个B
从私有 bitbucket 存储库导入一些包的应用程序。所以我已经复制B
到我的vendor
目录中。B
package 有一个vendor
目录,其中又包含 package C
。我也想C
直接在我的应用程序中使用该包。
这导致我的应用程序具有嵌套vendor
目录,并使我的构建因两个版本的C
包而失败。有人可以让我知道如何govendor
避免这种情况吗?
版本
- 总督 - 1.0.8
- 去 - 1.7.3
bash - govendor 不能从 cmd 工作
我尝试在我的项目文件夹中使用 govendor/d/projects/go/src/github.com/user/dbot
州长初始化
但是 bash 返回
bash:govendor:找不到命令
安装我只是按照说明使用
还有一些关于我需要知道的事情
go - 使用 govendor 设置依赖项的特定提交
我正在使用 govendor 来管理项目中的依赖项。我的vendor/vendor.json
.
}
现在我想使用 bimg 包的主版本,它比 govendor 获取的版本 1.0.7 更新。除了从github手动下载主版本并将其保存到供应商文件夹之外,实现此目的的正确方法是什么?
ps:所有依赖项都已提交。
go - 使用 govendor、dh-make-golang 构建 Go 1.7 项目时导入供应商依赖项问题
我一直在考虑将一个 go 项目构建到一个 debian 包中。
我查看了dh-make-golangdebian
并且在我的存储库中设置了一个漂亮而闪亮的文件夹。当我尝试使用gbp buildpackage --git-pbuilder
时,由于找不到我的所有依赖项而出错。当它从我的项目的 git 存储库中复制所有内容时,它似乎dh-make-golang
忽略了该文件夹,并且我使用了所以我的所有依赖项都在那里。vendor
govendor
如何解决此依赖问题并将项目.deb
正确构建为包?作为参考,我得到的错误是:
src/github.com/project/project/project.go:15:2: cannot find package "google.golang.org/grpc/grpclog" in any of:
/usr/lib/go-1.7/src/google.golang.org/grpc/grpclog (from $GOROOT)
/tmp/project/obj-x86_64-linux-gnu/src/google.golang.org/grpc/grpclog (from $GOPATH)