繁体   English   中英

无法在 Mac OSX 上设置 $GOPATH

[英]Cannot set $GOPATH on Mac OSX

我正在尝试设置我的$GOPATH变量以在我的机器上运行一些示例代码:

$ smitego-example go run main.go 
main.go:5:2: cannot find package "github.com/#GITHUB_USERNAME#/smitego" in any of:
    /usr/local/go/src/pkg/github.com/#GITHUB_USERNAME#/smitego (from $GOROOT)
    ($GOPATH not set)

$ smitego-example export $GOPATH=$HOME
-bash: export: `=/Users/#OSX_USERNAME#': not a valid identifier

在此处输入图像描述

github.com/#GITHUB_USERNAME#/smitego/smitego.go的内容:

package smitego

我怎样才能设置我的GOPATH让它永远有效?

更新,从Go 1.8开始 :如果您正在安装Go 1.8(已发布:2017年2月)或更高版本,GOPATH将由Go工具链自动确定

它默认为$HOME/go on macOS(nee OS X) - 例如/Users/matt/go/ 这使得Go的开始变得更加容易,您可以在安装Go后立即go get <package>


对于shell :(手动方法)

〜/ .bash_profile应该包含export GOPATH=$HOME/go并且还export PATH=$GOPATH/bin:$PATH $的使用很重要:请务必注意我在哪里使用它(以及我没有使用过的地方)。

对于Sublime文本:

Sublime Text菜单>首选项>包设置> GoSublime>设置:用户

{
        "shell": ["/bin/bash"],
        "env": {"GOPATH": "/Users/#USERNAME#/go/"},
}

确保您的GOPATH未设置为包的完整路径; 只是你的go文件夹的根目录,其中src, pkg, and bin所在的位置。 如果你没有使用GoSublime ,我建议先安装它。

接受的答案对我不起作用。 我调查并找到原因:我使用的是zsh,而不是bash。

我需要在~/.zshrc添加以下两行:

export GOPATH=/Users/username/go
export PATH=$GOPATH/bin:$PATH

只有在您阅读变量时,才会在分配变量时将$前缀放在变量上。

export GOPATH=$HOME

要使其永久化,请将命令放在.bash_profile

这适用于终端shell。 如果需要设置将影响GUI应用程序的环境变量 ,请参阅Mac OS X中的环境变量

1)下载并安装Go工具https://golang.org/doc/install

2)设置Go工作区

mkdir $HOME/go
cd $HOME/go
mkdir bin pkg src

3)设置Go环境

sudo vi ~/.bash_profile
export GOPATH=$HOME/go
PATH=$PATH:$GOPATH/bin

通过创建,构建和运行Go项目进行测试

mkdir $GOPATH/src/github.com/todsul/hello
touch $GOPATH/src/github.com/todsul/hello/hello.go
go install
hello

http://www.golang-book.com/guides/machine_setup#osx

只有在~/.bashrc上设置路径的说明,而不是~/.bash_profile ,这要归功于这个线程能够获取我的构建文件。

export GOPATH=$HOME
export PATH=$PATH:$GOPATH/bin

其他Mac用户需要将上述内容添加到他们的~/.bash_profile

安装后使用brew或包装解决了我的问题:

export GOROOT="/usr/local/go"
export GOPATH="$HOME/Documents/goWorkSpace"
export PATH="$HOME/Documents/goWorkSpace/bin:$PATH"

在macOS High Sierra版本10.3.3上,Go [go version go1.10.1 darwin / amd64]安装在这里:

去安装位置

添加以下内容:〜/ .bashrc

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

然后去工作

去工作

使用最新 mac 及 Catalina 版本以上的人,你们需要更新 .zshrc 文件而不是 .bash。

将以下两行添加到 ~/.zshrc:

导出 GOPATH=/用户/用户名/去

导出 PATH=$GOPATH/bin:$PATH

它应该工作.!!

这有一段时间发生了变化,请参阅下面的链接以了解为什么.zshrc 而不是.bash_profile https://eshop.macsales.com/blog/56921-moving-from-bash-to-zsh-terminal-changes-在-马科斯-卡塔利娜/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM