go version 命令在更新到 1.8 后显示旧版本号

新手上路,请多包涵

标题差不多。我为 OS X 下载/安装了 Go 1.8,但是当我去

$ go version
go version go1.7.5 darwin/amd64

我的 .bashrc 如下所示

# some exports omitted

NPM_PACKAGES=/Users/<me>/.npm-packages
NODE_PATH="$NPM_PACKAGES/lib/node_modules:$NODE_PATH"

export PATH=~/Library/Python/3.4/bin:$PATH

export GOPATH=$HOME/Go
export PATH=$PATH:/usr/local/go/bin

我的工作区位于我的主文件夹中名为“Go”的目录中。

到目前为止我检查过的内容:

  • 我检查了/usr/local/go/bin 中的文件,VERSION 文件显示为“1.8”,因此我知道安装成功。

  • 我还更新了我的终端会话,我什至重新启动了我的电脑以确保没有其他进程干扰它。

  • 我使用 Webstorm 作为我的 IDE,它正确地将 1.8 识别为工作版本

  • 这不是版本号本身的错误,因为我无法使用 1.8 版中引入的“NextResultSet()”sql 功能

我相信罪魁祸首可能是上面 .bashrc 文件中的错误配置,因为只有终端卡在旧版本上,但我无法弄清楚它有什么问题。

原文由 Arnaud H 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

您显然安装了旧版本的 Go,否则您看不到 go version go1.7.5 darwin/amd64 作为 go version 的输出。

除了简单地扫描 PATHGOROOT 之外,IDE 可能有更高级的检测 Go 安装的方法(这就是为什么你的 IDE 发现并建议更新的 Go 1.8)。

执行 which go ,您会看到旧 Go 所在的位置。删除它(以及对它的引用)。

请注意,在您的 .bashrc 中,您将正确的 Go bin 文件夹附加到 PATH 的 _末尾_:

 export PATH=$PATH:/usr/local/go/bin

这意味着如果 PATH 包含 bin 旧 Go 安装的文件夹(很有可能),用于执行 go 命令

原文由 icza 发布,翻译遵循 CC BY-SA 3.0 许可协议

我遇到过同样的问题。即使通过从golang网站下载在mac上安装golang 1.10后,mac终端仍然显示1.7版本。

通过自制软件更新 golang 解决了我的问题。

 brew update
brew upgrade golang

原文由 Sreenidhi Sreesha 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题