ダウンロードできない、$GOPATHが設定されていない

go get github.com/jehiah/json2csv`でjson2csvをインストールしたいのですが、次のようなエラーが出ます。

package github.com/jehiah/json2csv: cannot download, $GOPATH not set. For more details see: go help go path

MacOSでこの問題を解決する方法があれば教えてください。

ソリューション

[Update: Go 1.8の時点では、GOPATHのデフォルトは$HOME/goですが、GOPATHのレイアウトを理解したり、カスタマイズしたりしたい場合には、まだ役に立つかもしれません]。

Goの公式サイトでは、GOPATHとワークスペースディレクトリのレイアウト方法について説明していますとなっています。

export GOPATH="$HOME/your-workspace-dir/" -- シェルで実行してから、~/.bashrc などに追加すると、将来的に設定されるようになります。Goはパッケージをsrc/bin/pkg/というサブディレクトリにインストールします。GitHubに公開したい場合は、$GOPATH/src/github.com/myusername/のように、$GOPATH/srcの下のどこかに自分のパッケージを置くことになるでしょう。また、.bashrcexport PATH=$PATH:$GOPATH/binと記述しておけば、$GOPATHの下でコンパイルされたプログラムを実行できるようになります。

オプションとして、Rob Pike経由で、CDPATHを設定して、bashでパッケージのディレクトリにcdするのが速くなるようにすることもできます。export CDPATH=.:$GOPATH/src/github.com:$GOPATH/src/golang.org/xとすると、cd $GOPATH/src/golang.org/x/net/htmlではなく、cd net/html`と入力すればよいことになります。

Keith Rarick notesでは、GOPATH=$HOMEを設定することで、Go'のsrc/pkg/bin/のディレクトリを自分のホームディレクトリの直下に置くことができます。これはいいことだと思いますが(たとえば、すでにパスに$HOME/binが含まれているかもしれません)、もちろん、複数のワークスペースを使っている人などもいるでしょう。

解説 (5)

Watch a Video

一般的に、この問題の概要を知るためには、いつもGoのこの公式ビデオをお勧めします。

http://www.youtube.com/watch?v=XCsL89YtqCs

It's easier to be shown than to be told.

@jwfearnの動画の重要な部分を言い換えたものです。

export GOPATH="${HOME}/gocode"export PATH="${PATH}:${GOPATH}/bin"mkdir -p "${GOPATH}"

解説 (2)

ただ、export GOPATH="/whatever/you/like/your/GOPATH/to/be"とするだけです。

解説 (1)