mac osx golang环境配置问题

使用homebrew 安装了go

然后在.zshrc中做了如下的配置:

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

但是当我在$Home/workspace/go/src/restful/ 目录下运行:
sudo go run *.go

提示package not found

router.go:4:2: cannot find package "github.com/gorilla/mux" in any of:
    /usr/local/Cellar/go/1.8.3/libexec/src/github.com/gorilla/mux (from $GOROOT)
    /Users/skyfynn/go/src/github.com/gorilla/mux (from $GOPATH)

然后我echo $GOPATH 得到的与go env 的一致,也就是:$HOME/workspace/go

为什么go run 执行时搜索的GOPATH是$HOME/go 呢?

求解答!!!谢谢~

阅读 4.4k
1 个回答

sudo go run *.go

echo $GOPATH

go env

很明显,后面俩少了个sudo。sudo指的是用root账户的权限(包括root的环境变量)来运行,你自己设置的环境变量当然就不生效了。

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