dep init上的'不在已知的GOPATH/src'错误中

Est*_*ask 18 go

当我dep init在项目文件夹中运行时,会发生错误:

init失败:无法检测到包含的GOPATH:D:\ projects\foo不在已知的GOPATH/src中

我的项目位于另一个驱动器而不是%GOPATH%/src(即 %USERPROFILE%\go\src).

这是一个已知的错误,但目前还不清楚解决方案是什么.

如何在dep不移动Go项目的情况下使用%GOPATH%/src

Vol*_*ker 12

如何在不将Go项目移动到%GOPATH%/ src的情况下使用dep?

一点也不.


Rob*_*Rob 7

Go做出了这样的选择,以便没有像CLASSPATH(即Java)这样的东西要处理。您指定一个$ GOPATH,其中具有一致的src树。如果您的回购引用了特定的git提交(而不是检出到$ GOPATH / src / github.com / $ githubUser / $ githubProjectName中的那些),则这些将在项目的./vendor目录中。

如果由于版本问题,您有一个使用完全不同的检出集的其他Go项目,则可以使用多个$ GOPATH值来处理。

  • 正确。如果您在两个完全不同的项目之间进行切换,并且彼此之间没有依赖关系,则需要两个独立的GOPATH变量。在开始销售之前,您确实需要执行此操作来处理版本控制。现在,您通常只对顶级项目进行“获取”,并供应他们所依赖的所有内容。 (2认同)

小智 6

Go 项目要求你的项目在它的路径内。所以首先做一个 $ go env 找出它在哪里。假设它说/home/turgut/go 将您下载的需要 dep 的项目移动到: /home/turgut/go/src/myproject 然后 现在cd /home/turgut/go/src/myproject 尝试该 dep ensure命令。

  • 据我了解,问题是如何避免将源文件保留在不需要的位置。 (2认同)

Aru*_*uri 5

是什么go env命令说你GOPATH是什么?根据此文档为您的环境设置 GOPATH