在安装Go后,在Mac上运行"go"命令时出现"Command not found go"的错误提示。

93

我安装了go1.5.2 darwin/amd64,但是当我运行命令go version时,在终端上会出现错误zsh: command not found: go

我将路径export PATH=$PATH:/usr/local/go/bin添加到bash配置文件中,但我仍然收到错误信息(顺便说一下,我已经重新启动了终端)。

我卸载并重新安装了,但没有成功。


1
我在命令行中使用zsh。 - medev21
5
应该将您的PATH变量添加到~/.zshrc而不是bash配置文件中,错误显示您正在使用的是zsh而不是bash。 - bjhaid
2
@bjhaid,这个方法很有效,非常感谢。我猜如果我想添加一个工作区路径,我也需要将其添加到zshrc文件中。这样正确吗? - medev21
@medev21 我不知道go工具是如何工作的,所以我无法回答那个问题。 - bjhaid
@medev21,Go语言没有像Python那样的工作区。更好的方法是使用类似http://getgb.io/这样的工具,可以更好地解决这个问题。 - elithrar
显示剩余2条评论
8个回答

阿里云服务器只需要99元/年,新老用户同享,点击查看详情
204

如上面评论中提到的bjhaid所说:

这是因为您必须将您的PATH添加到您的~/.zshrc文件中。

~/.zshrc中,您应该添加以下行:

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

接下来您应该找到您的.zshrc文件:

. ~/.zshrc

我已添加了唯一对我有效的行。 - Mihir Mehta
6
在我的情况下,$GOPATH 没有被明确设置,因此执行 $ echo $GOPATH 时返回空值。 在我的 .zshrc 文件中,我必须将第二个 export 设置为 export PATH=$PATH:$HOME/go/bin 才能使其正常工作。 - Jheasly
2
export PATH=$PATH:/usr/local/go/bin should be export GOPATH=$PATH:/usr/local/go/bin - Dinesh

24

我遇到了问题,按照这里的步骤,最终获得了一个可用的解决方案:http://totzyuta.github.io/blog/2015/06/21/installing-go-by-homebrew-on-mac-os-x/

使用brew安装:

brew install golang

编辑bash_profile文件并添加以下路径:

nano ~/.bash_profile

export GOROOT=/usr/local/opt/go/libexec
export GOPATH=$HOME/.go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

操作步骤:

source ~/.bash_profile

重新启动终端

go version

输出结果:go version go1.12 darwin/amd64


7

对于bash,你应该编辑.bashrc文件并添加上述提到的行:

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

6
将以下行添加到您的Mac上的~/.bashrc~/.bash_profile文件末尾: alias go="/usr/local/go/bin/go" 在终端中,执行以下命令: source ~/.bashrcsource ~/.bash_profile 来更新现有终端会话。或者,您也可以重新打开一个新的终端会话来查看更改。

6
Go路径添加到您的~/.zshrc文件中。打开文件进行编辑,如下所示-
vim ~/.zshrc
~/.zshrc文件中,您应该添加以下行:
export PATH=$PATH:/usr/local/go/bin
完成后,关闭并重新打开终端即可,然后您就可以开始进行操作了。作为测试,您可以执行-
go version

它将显示如下输出 -

go version go1.15.1 darwin/amd64

这是一个重复的答案。 - Scott Stensland
1
@ScottStensland 其他关于.zshrcGOPATH的答案在我新安装的版本1.18.2上都不起作用,无论如何,这个答案有效,谢谢@Pankaj! - AamirR

4

GOPATH 环境变量指定了您的工作区位置。如果未设置 GOPATH,则在 Unix 系统上假定为 $HOME/go,在 Windows 上为 %USERPROFILE%\go。如果您想要使用自定义位置作为您的工作区,可以设置 GOPATH 环境变量。

本答案解释了如何在各种 Unix 系统上设置此变量。

GOPATH 可以是系统上的任何目录。在 Unix 示例中,我们将其设置为 $HOME/go(从 Go 1.8 开始的默认值)。请注意,GOPATH 必须不在与您的 Go 安装相同的路径上。另一种常见的设置是将 GOPATH=$HOME

Go 1.13+

go env -w GOPATH=$HOME/go

Bash

在你的~/.bash_profile中添加以下一行:

export GOPATH=$HOME/go

保存并退出编辑器。然后,源化您的~/.bash_profile文件。

source ~/.bash_profile

Zsh

编辑你的~/.zshrc文件,添加以下行:

export GOPATH=$HOME/go

保存并退出编辑器。然后,执行命令 source ~/.zshrc

source ~/.zshrc

set -x -U GOPATH $HOME/go

使用-x来指定该变量应该被导出,而-U则将其设为全局变量,可供所有会话使用并保持不变。


3

以下是我在我的Mac上所做的:

使用sudo nano ~/.zshrc打开文件~/.zshrc,然后粘贴:

export PATH=$PATH:/usr/local/go/bin 保存并退出(按ctrl + s,ctrl + x然后按y) 然后运行

. ~/.zshrc Go已经启动, 通过在命令行中输入go来验证。


1

在我的情况下,我没有~/.zshrc配置文件。按照以下步骤使其正常工作。

Mac操作系统版本:Mojave(10.14.6)

Go语言版本:go1.13.1 darwin/amd64

参考链接:https://www.cyberciti.biz/faq/installing-go-programming-language-on-mac-os-x/

如链接中所述,当我执行“go env”命令时,它会抛出错误“未找到go命令”。将“export PATH=$PATH:/usr/local/go/bin”添加到“~/.bashrc”配置文件中并没有奏效!

步骤1:在主目录下创建~/.zshrc配置文件。

$ cd /User/xxxx (例如:/User/tapan

$ touch ~/.zshrc

步骤2:在~/.zshrc文件中附加带有go的'PATH'。

$ vim .zshrc

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

步骤3:运行以下命令,加载你的.zshrc文件

$ source ~/.zshrc

步骤4:执行 "go env" 命令,你应该能够看到本地环境详细信息。

$ go env


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,