20
15

More than 1 year has passed since last update.

GoLandのインストールと基本設定(MacOS)

Last updated at Posted at 2019-05-29

概要

MacOSでGoLangの開発を快適に行う環境構築をまとめた記事です。

ツールとしては GoLand を利用します。

対象読者

  • MacOSを所持している方
  • Linuxコマンドの基礎を理解しMacのターミナル操作が出来る方

前提条件

Homebrew がインストールされている前提でお話させて頂きます。

筆者の実行環境

  • MacOS Big Sur
    • CPU 2 GHz クアッドコアIntel Core i5
    • メモリ 32GB

GoLangをMac上にインストールする

最初に brew update を実行してpackageを最新の状態にします。

続いて brew install go を実行します。

go version を実行し下記のように表示されれば成功です。

$ go version
go version go1.12.5 darwin/amd64

ちなみに複数のGoLangプロジェクトを運用していて各プロジェクト毎にバージョンが異なる場合は goenv 等を利用すると良いでしょう。

(参考)Mac に goenv を利用して Go をインストールする

MacOS上にGoをインストール一番の理由は後の説明で出てくる GoLand によるコード補完やリファクタリング機能を利用しやすくする為です。

Docker 等を利用してバージョンが異なる複数のGoLang実行環境を作る事はさほど難しくないので無理に goenv を利用しなくても良いというのが個人的な見解です。

GoLandをMac上にインストールする

JetBrains製のIDEです。

現時点ではこのGoLandを利用する方法が最も開発体験が良いという印象です。

一応 IntelliJ IDEA のGo Pluginを利用する方法でも、ほぼ同様の事が実現出来るので、そちらを使っても問題ありません。(使い方もほぼ同じです)

(参考)IntelliJ IDEAでGo言語(golang)を始める〜GOPATHの設定など

https://www.jetbrains.com/go/download/#section=mac よりダウンロードを行います。

インストール手順に関しては非常に簡単なので省略させて頂きます。(アプリケーションディレクトリにコピーするだけ)

GoLandの設定を行う

アプリケーションを起動します。

最初は設定がないと思いますので Do not import settings を選び次に進みます。

GoLand-settings-1.png

エディタの設定

ここは好みの領域になってきますが、私がいつもやっている設定を書いておきます。

Preferences → Editor → General

  • Remove trailing blank lines at the end of saved files - ON「行末の不要なスペースやタブを保存時に削除する」
  • Ensure every saved file ends with a line break - ON「保存されたファイルの最後が改行で終わるようにする」

GoLand.png

Preferences → Editor → General → Appearance

  • Show line number - ON「行番号の表示」
  • Show method separators - ON「メソッドの区切り線」
  • Show whitespaces - ON「空白の表示」
GoLand-settings-3.png

GoLandにGOROOTを認識させる

この記事の通りにやっていれば /usr/local/Cellar/go/1.12.5/libexec になります。

Go → GOROOTを選択すればサジェスト欄に出てくるので、それを選択します。

GoLand-settings-4.png

ただし goenv を利用しているとサジェストで出てこないので、 その場合は明示的に絶対パスを指定する必要があります。

下記の記事等を参考にすると良いでしょう。

(参考)GoLand のGOROOTにanyenv(goenv)内のgolangを指定する.

2019-09-10 追記

Go 1.13に対応する為に anyenv + goenv でGoLangのインストールを行いました。

anyenv install goenv
exec $SHELL -l
goenv install 1.13.0
goenv global 1.13.0

which go の結果は /Users/${username}/.anyenv/envs/goenv/shims/go となっていますが、これはシンボリックリンクで実体は /Users/${username}/.anyenv/envs/goenv/versions/1.13.0 にありますのでGoLandからは実体のパスを設定してあげる必要があります。

goenv.png

2022-10-25 追記

最近は asdfasdf-go-sdk を利用しているので、GOROOTGOPATH は↓のような感じで設定しています。

GOROOT.png

GOPATH.png

これらの値に関してはプロジェクトルートで以下のようなコマンドで確認可能です。

go env GOROOT
/Users/ユーザー名/sdk/go1.17.13

go env GOPATH
/Users/ユーザー名/go

(参考記事)
https://zenn.dev/yacchi21/articles/dd6d41b50fa1be#fn-158e-1

動作確認

動作確認用のプロジェクトを下記に用意しました。

上記のプロジェクトを自身のPCにダウンロードします。

git clone https://github.com/keitakn/go-rest-api.git

プロジェクトのインポートを行います。

「Open Project」より先程 git clone した動作確認用プロジェクトをインポートします。

import_project.png

Go Modulesを有効にする

このプロジェクトはGo Modulesをpackage管理として利用しています。

Go → Go Modules(vgo)からGo Modulesを有効にします。

GoLand-settings-5.png

プロジェクトルートで go build を実行して下さい。

IDEでのコード補完が有効になった事を確認出来るかと思います。

おまけ1 目に優しいTheme(Solarized Theme)をインストールする

PCに向かう時間が長いとブルーライトで目に悪影響があるので、一番目に優しいと言われているカラーテーマであるSolarized Themeをインストールし設定します。

Plugins から Solarized Theme と検索を行いインストールを行います。

SolarizedTheme.png

Preferences → Appearance & Behavior → Appearanceから設定を行います。

SolarizedTheme2.png

こんな感じのThemeになります。

MacのNight Shift と組み合わせるとさらに目に優しくて良い感じです。

おまけ2 メモリ割当を増やす

PCのスペックに余裕がある場合は こちら を参考にメモリヒープを増やすと動作が快適になります。

またメモリインジケーターを有効にする事で、メモリの使用量を把握出来ます。(設定方法は こちら に記載があります。)

参考資料

以上になります。最後まで読んで頂きありがとうございました。

20
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
15