我本打算使用vendor进行项目的包管理,但是在进入项目文件夹后运行`$ govendor init` 时报错,但是我的项目确实放在$GOPATH 目录下的文件中了。我所用代码如下:
`$ cd ~/go/workplace/test`
`$ govendor init`
此时,系统提示错误:
`Error: Package "/home/zxt/go/workplace/test" not a go package or not in GOPATH.`
使用`$ go env`命令后显示如下:
`GOARCH="amd64"
GOBIN="/home/zxt/go/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/zxt/go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build356468034=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"`
`$ tree`查看test文件夹结构如下:
└── main.go
0 directories, 1 file
我无法理解go package的概念,而且没有找到这个错误的原因。改如何才能成功使用govendor呢?
export GOPATH="~/go/workplace/test"
cd ~/go/workplace/test/src && govendor init
#4
更多评论