EclipseにGo開発環境構築（mac）

goを始めてみようとして開発環境を作ってみました。

以下、２サイトを参考にさせていただきました。
[Goの開発環境 Eclipse+GoClipse（Mac OS X）](http://qiita.com/takanorig/items/13607eca4d13c00f084f#goglipse-のインストール設定)
[mac×Eclipse×GoClipse構築備忘録](http://qiita.com/junpayment/items/a93ab50746afeb6a5dd8)

構築した環境は以下となります。

- macOS Sierra ver10.12.5
- Eclipse Neon.1a Release (4.6.1)
- go 1.8.3

# Goのインストール
goのインストールは以下のコマンドをターミナルで実行します。

```
brew install go
```

インストールが正常に行われたら、.bash_profileへ環境変数を追記します。

```
vi ~/.bash_profile

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

# GoClipseのインストール

今回は、タイトルにもある通り、Eclipseへ開発ツールをインストールしていきます。
EclipseでGoを開発するためのGoClipseというものがありました。

Eclipseメニューの「ヘルプ」から「新規ソフトウェアのインストール..」を選択します。
表示されたインストール画面にて、作業対象へ以下のURLを指定してEnterを実行します。

http://goclipse.github.io/releases/

インストールするものは「GoClipse」のみにチェックしておきます。

![スクリーンショット 2017-06-18 22.32.03.png](https://qiita-image-store.s3.amazonaws.com/0/145295/7956e415-ba78-9a8b-8df6-2be946f9f785.png)

インストールが無事終了すれば、Eclipseの再起動が自動的に開始されます。

再起動後、正常にインストールが行われていれば、Eclipseの「環境設定」に、
Goのメニューが追加されているはずです。

![スクリーンショット 2017-06-18 22.35.27.png](https://qiita-image-store.s3.amazonaws.com/0/145295/19de6a51-eb6e-97b2-0dfc-9f8ba3d9cff4.png)

# GoClipseの設定

まずはメニュー「Go」にある「Go installation」を設定します。
参照ボタンをクリックして`/usr/local/opt/go/libexec`を指定します。

「Eclipse GOPATH」に関しては、以下にそれぞれチェックしておきます。
- 「Use same value as the GOPATH environment variable」
- 「Also add project location to GOPATH, if it's not contained there already」

![スクリーンショット 2017-06-18 22.44.51.png](https://qiita-image-store.s3.amazonaws.com/0/145295/fe8996e3-611c-b344-fe48-36d554e373f1.png)

次にツールの設定を行います。
設定するツールは以下の４つです。

- geocode
- guru
- godef
- gofmt

`gofmt`に関してはデフォルトロケーションを使用できるみたいなので、使用にチェックを入れておきます。「Format automatically on editor save」にも入れておくと、Goファイルの保存時にフォーマットされるので便利です。

それぞれ設定するにはインストール・ビルドしている必要があるため、インストールしていない場合はインストールしてビルドしておきます。 
ターミナルで以下を実行します。

```
go get -u github.com/nsf/gocode
go build github.com/nsf/gocode

go get github.com/rogpeppe/godef
go build github.com/rogpeppe/godef
```

インストールしたパスをそれぞれに設定したらツール設定も終了です。

![スクリーンショット 2017-06-18 23.10.33.png](https://qiita-image-store.s3.amazonaws.com/0/145295/8787d57c-bec4-1568-91b4-ff9b3455759b.png)

# GoでHello world

Eclipseのパッケージ・エクスプローラーで右クリックしてGoプロジェクトを新規作成します。

![スクリーンショット 2017-06-18 23.21.21.png](https://qiita-image-store.s3.amazonaws.com/0/145295/270b77b7-c41f-2de4-4665-e7bcd505bf18.png)

名前とロケーションはお好みのものを入力し「完了」します。
完了後はプロジェクトが作成されます。

![スクリーンショット 2017-06-18 23.24.07.png](https://qiita-image-store.s3.amazonaws.com/0/145295/2f1c4c38-b9b7-5be4-26a7-5992e33c0c50.png)

次に実際にHelloworldのソースを書いていきます。その前に「src」の下にフォルダを作成しておきます。
（「src」直下にクラスファイルを置いて実行したらエラーになりました。）

フォルダを作成したら、そのフォルダ直下に「Go File」を作成していきます。

![スクリーンショット 2017-06-18 23.28.08.png](https://qiita-image-store.s3.amazonaws.com/0/145295/aea108a3-66c8-c073-5941-7398293862e0.png)

![スクリーンショット 2017-06-18 23.29.36.png](https://qiita-image-store.s3.amazonaws.com/0/145295/b9dc9285-4466-5952-8b1b-152d5812f3c6.png)

Go Fileには以下を記述して完成です。

```main.go
package main

import (
	"fmt"
)

func main() {
	fmt.Println("Hello world!")
}

```

実行してコンソールに「Hello world!」と出力されれば環境構築は完了です。

![スクリーンショット 2017-06-18 23.35.30.png](https://qiita-image-store.s3.amazonaws.com/0/145295/ea509073-0e8e-fb16-59bc-937ccddbe602.png)

# 補足

main.goの実行方法ですが、ファイルを右クリックし「実行」→「実行の構成..」を選択し、Go Applicationを新規作成して実行をクリックします。

![スクリーンショット 2017-06-18 23.37.18.png](https://qiita-image-store.s3.amazonaws.com/0/145295/fe800206-3b4a-15ae-4f24-b484f1d8c22a.png)

![スクリーンショット 2017-06-18 23.38.25.png](https://qiita-image-store.s3.amazonaws.com/0/145295/d6c2219c-aa32-5c4c-ca76-ea93d12518e4.png)