首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >go env显示GOPATH不匹配

go env显示GOPATH不匹配
EN

Stack Overflow用户
提问于 2020-06-24 02:31:18
回答 1查看 3.3K关注 0票数 1

我使用go env检查GOPATH:

代码语言:javascript
运行
复制
$ go env
GOARCH="amd64"
GOBIN="/usr/local/Cellar/go/1.7.6/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/usr/local/Cellar/go/1.7.6"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.8.1/libexec"
GOTOOLDIR="/usr/local/Cellar/go/1.8.1/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/qp/h96_smbd55ggtzwvml8wpl9h0000gn/T/go-build644796325=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"

这里显示了GOPATH="/usr/local/Cellar/go/1.7.6"

但是在我的/usr/local/Cellar/go下只有1.8.1/,为什么它不匹配?这是否是因为更新?如何做出合适的go env

编辑-01

我在我的Mac中安装了新的go:

代码语言:javascript
运行
复制
tar -C /usr/local -xzf go1.14.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
代码语言:javascript
运行
复制
$ go version
go version go1.14.4 darwin/amd64

但是现在当我检查go env时,仍然有错误的路径:

代码语言:javascript
运行
复制
dele-MBP:go ldl$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN="/usr/local/Cellar/go/1.7.6/bin"
GOCACHE="/Users/dele/Library/Caches/go-build"
GOENV="/Users/dele/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/usr/local/Cellar/go/1.7.6"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/qp/h96_smbd55ggtzwvml8wpl9h0000gn/T/go-build431355334=/tmp/go-build -gno-record-gcc-switches -fno-common"

编辑-02

当我用这种方式检查go env时,就会收到警告。

代码语言:javascript
运行
复制
$ go env -w GOPATH="/usr/local/go"
warning: go env -w GOPATH=... does not override conflicting OS environment variable

编辑-03

代码语言:javascript
运行
复制
$ cat "${HOME}/Library/Application Support/go/env"
GOPATH=/usr/local/go

编辑-04

代码语言:javascript
运行
复制
dele-MBP:go ldl$ unset GOPATH
dele-MBP:go ldl$ go env -w GOPATH="/usr/local/go"
warning: GOPATH set to GOROOT (/usr/local/go) has no effect
EN

回答 1

Stack Overflow用户

发布于 2020-06-24 03:18:15

go env设置--取决于您的操作系统--将持久化在用户帐户的主目录中。例如,在MacOS上,您可以在这里找到它:

代码语言:javascript
运行
复制
cat "${HOME}/Library/Application Support/go/env"

GOPROXY=direct

最有可能的情况是,您有一个来自以前的brew install的旧设置,可能是旧版本的。

要更正,只需编写正确的值,如下所示:

代码语言:javascript
运行
复制
go env -w GOPATH="/usr/local/Cellar/go/1.8.1"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62546682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档