我试图像这样安装doozer:

$ goinstall github.com/ha/doozer

我得到这些错误。

goinstall: os: go/build: package could not be found locally goinstall: fmt: go/build: package could not be found locally goinstall: io: go/build: package could not be found locally goinstall: reflect: go/build: package could not be found locally goinstall: math: go/build: package could not be found locally goinstall: rand: go/build: package could not be found locally goinstall: url: go/build: package could not be found locally goinstall: net: go/build: package could not be found locally goinstall: sync: go/build: package could not be found locally goinstall: runtime: go/build: package could not be found locally goinstall: strings: go/build: package could not be found locally goinstall: sort: go/build: package could not be found locally goinstall: strconv: go/build: package could not be found locally goinstall: bytes: go/build: package could not be found locally goinstall: log: go/build: package could not be found locally goinstall: encoding/binary: go/build: package could not be found locally


当前回答

值应该是(MACOS):

GOROOT="/usr/local/go" --> all binaries file core go
GOPATH="/Applications/proyectos/go" --> the route to workspace (custom workspace)

其他回答

您不需要显式地设置GOROOT(现代版本的Go可以根据您运行的Go二进制文件的位置自行确定)。

另外,当尝试使用vgo工作时,得到了跟随错误:

go: modules disabled inside GOPATH/src by GO111MODULE=auto; see 'go help modules'

删除GOROOT,更新我的GOPATH和导出GO111MODULE=“on”解决了这个问题。

看这里

GOPATH可以设置为一个以冒号分隔的路径列表,其中可以找到Go代码、包对象和可执行文件。 设置GOPATH使用goinstall在Go树之外构建和安装自己的代码和外部库(并避免编写makefile)。

截至2020年和Go版本1.13+,在Windows中更新GOPATH的最佳方法是在命令提示符中输入:

setx GOPATH C:\mynewgopath

不建议使用GOPATH和GOROOT配置。

您可以使用GO模块。

例如:

mkdir go_app
cd go_app
go mod init go_app

GOPATH不应该指向Go安装,而是指向您的工作空间(参见https://golang.org/doc/code.html#GOPATH)。当你使用go get或go install安装某个包时,它会落在GOPATH中。这就是为什么它警告你,你绝对不希望从互联网随机包被转储到你的正式安装。

第一次运行go env。 如果你看到go没有安装,你可以通过homebrew或包和/或其他方式安装它。 如果您看到输出,那么您的Go已经安装。 它向你展示了所有已设置和未设置的env。

如果你看到GOROOT为空:

在我的电脑上:/usr/local/go/bin/go 然后export GOROOT=/usr/local/go

如果你看到GOPATH为空:

在计算机的任何位置为go项目创建任意目录,在我的例子中是:~/GO_PROJECTS 然后导出GOPATH=~/GO_PROJECTS