为什么不去1.6.2搜索供应商/包?

时间:2016-06-30 16:00:57

标签: testing go vendor

项目的结构是:

.
├── glide.yaml
├── glide.lock
├── bin
├── pkg
├── src
└── vendor

我使用Glide进行依赖关系管理,GOPATH是我的项目根目录(在上面的树中解析为.的绝对路径。)

Glide似乎正确安装了依赖项,但是当尝试使用Go 1.6.2运行测试时,我甚至在失败前查看vendor/文件夹时看不到它:

GOPATH=/home/charney/myproject go test -i ...
src/myapp/main.go:36:2: cannot find package "golang.org/x/net/context" in any of:
    /usr/local/go/src/golang.org/x/net/context (from $GOROOT)
    /home/charneymyproject/src/golang.org/x/net/context (from $GOPATH)

它正在寻找的包位于/home/charneymyproject/vendor/golang.org/x/net/context

1 个答案:

答案 0 :(得分:2)

通过将vendor/文件夹移动到src/文件夹内部来解决此问题,例如:

.
├── glide.yaml
├── glide.lock
├── bin
├── pkg
└── src
     └── vendor