无法在Mac OSX上设置$ GOPATH

我想设置我的$GOPATHvariables来运行我的机器上的一些示例代码:

 $ 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 macOS(nee OS X) – 例如/Users/matt/go/ 。 这使得Go更容易go get <package> ,安装Go之后,您可以立即go get <package>


对于shell (手动方法)

〜/ .bash_profile应该包含export GOPATH=$HOME/go并且还要export PATH=$GOPATH/bin:$PATH$的使用是重要的:确保记下我在哪里使用过(以及我没有使用过的地方)。

对于崇高的文本:

崇高文本菜单>首选项>程序包设置> GoSublime>设置:用户

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

确保你的GOPATH没有设置到包的完整path; 只是你的go文件夹的根源,其中src, pkg, and bin所在。 如果你不使用GoSublime ,我会build议先安装它。

只有在阅读时,才会将$前缀放在variables上。

 export GOPATH=$HOME 

为了使这个永久的,把这个命令放在你的.bash_profile

这将对terminalshell有效。 如果您需要设置影响GUI应用程序的环境variables ,请参阅Mac OS X中的环境variables

接受的答案不适合我。 我调查,发现原因:我使用zsh,而不是bash。

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

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

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

只有在~/.bashrc设置path的指令,而不是~/.bash_profile ,这个感谢这个线程能够得到我的示例文件来构build。

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

其他的Mac用户需要在~/.bash_profile添加上面的内容。