go run
和go build
不是get
依赖项。
我做了什么:
go run
。 (一切都很好)go run
。 (获取依赖项错误)。#↳ go version
go version go1.11.4 linux/amd64
#↳ echo $GOPATH
/home/????/+Files/workshops/programming/golang/gopath
#↳ go get -u github.com/cbroglie/mustache/...
#↳ cp -T $GOPATH/src/github.com/cbroglie/mustache/cmd/mustache/main.go my-mustache.go
#↳ go build -v my-mustache.go
my-mustache.go:8:2: cannot find package "github.com/spf13/cobra" in any of:
/usr/local/go/src/github.com/spf13/cobra (from $GOROOT)
/go/src/github.com/spf13/cobra (from $GOPATH)
我可以看到为什么尚未安装它:它位于原始源代码的供应商子目录中。但是,为什么在我构建时不安装?
答案 0 :(得分:1)
首先检查您的node_modules
文件夹:$GOPATH/bin
应该已经在其中编译并安装了所有相关的二进制文件。
README提到:
要安装
go get -u github.com/cbroglie/mustache/...
,只需运行mustache.go
。
看起来胡子套件已安装并且正在运行。
但是,当我尝试构建cli示例时,它需要另一个软件包,如果我可以得到它,那么一切都很好,但是我希望可以通过构建来安装所有需要的软件包。
我错了吗?
go get github.com/cbroglie/mustache/...
本身不会安装依赖项,因此您需要获取它,或激活go 1.11 modules并在新程序模块中声明该依赖项。