猿问

Go 包导入 self,在 GOPATH 中找不到自己

每隔一段时间,我会使用一个 go 包,它有一个 go get like :go get github.com/<user>/aRepo并且在它自己的 import 语句中有import "github.com/<user>/aRepo". 所以它使用“go gettable”路径导入自己。有时这很好用;然而,有时我得到


package github.com/<user>/aRepo

imports github.com/<user>/aRepo

imports github.com/<user>/aRepo: cannot find package "github.com/<user>/aRepo" in any of:

/usr/local/go/src/github.com/<user>/aRepo (from $GOROOT)

/home/me/go/src/github.com/<user>/aRepo (from $GOPATH)

我设置了我的 GOPATH:


export GOPATH=$GOPATH:/home/me/go:`godep path`

目前还不清楚为什么会发生这种情况,有什么想法吗?


编辑


我的go env:


GOARCH="amd64"

GOBIN=""

GOCHAR="6"

GOEXE=""

GOHOSTARCH="amd64"

GOHOSTOS="linux"

GOOS="linux"

GOPATH=":/home/vagrant/go"

GORACE=""

GOROOT="/usr/local/go"

GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"

CC="gcc"

GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"

CXX="g++"

CGO_ENABLED="1"


有只小跳蛙
浏览 153回答 1
1回答

HUX布斯

所以事实证明这是一个权限问题,因为我使用的是一个带有同步文件夹的 vagrant 框,vagrant 将同步文件夹创建的整个路径设置为 744 root:root。因此,我无法以非 root 用户的身份写入该文件夹,因此该错误消息实际上是来自 godep 尝试自行安装但未找到其 src。
随时随地看视频慕课网APP

相关分类

Go
我要回答