LoginSignup
6
3

More than 1 year has passed since last update.

Golang 環境の設定 macOS + IntelliJ

Last updated at Posted at 2017-12-03

環境

  • IntelliJ IDEA 2022.2.3 (Ultimate Edition) + Go plugin
  • macOS Monterey 12.6.1
  • Go 1.19.2

Golang のインストール

まずは Go 自体をマシンにインストールする。
brew install go でサクッとインストールできる。
Go は後方互換性が保たれているので、あんまり古いバージョンを使い続けないことがおおい(と思う)。
が、念の為、複数バージョンを使い分けられるようにしておく。

goenv でもいいのだけど、おすすめは asdf
asdf は様々なCLIツールに対応したバージョンマネージャでプラグインで拡張できる。
CLIツールには各種言語の実行環境も含まれている。
Go のプラグインも複数あるが、 go-sdk1がおすすめ

brew install asdf          # asdf 本体のインストール
asdf plugin add go-sdk     # go-sdk プラグインのインストール
asdf install go-sdk 1.19.2 # go v1.19.2 のインストール

IntelliJ IDEA と Go プラグインをインストール

IntelliJ のインストールも Homebrew で可能。

brew intall --cask intellij-idea

Go プラグインのインストール

Go プラグインは JetBrains 純正のものがある。GoLand相当の機能を追加するもの。

Preferences > Plugins を開いて Marcketplace で 「go」 で検索すると見つかる。
選択してインストールする。

GOROOT の設定

Preferences > Language & Frameworks > Go > GOROOT で GOROOT を指定する。

Homebrew で Go をインストールした場合だと /opt/homebrew/Caller/go/<version>/libexec にあるので指定する。
asdf の go-sdk でインストールした場合だと ~/.asdf/installs/go-sdk/<version> にある。

フォーマッターの設定

Preferences > Editor > Code Style > GoImport を開いて、 Sorting type を選択する。
gofmt がデフォルトで、 goimport も選択できる。 より良い感じに調整してくれる goimport を選ぶ。
まあ、 gofmt が好みならそのままでも良い。

次に Preferences > Tools > Action on Save を開いて Reformat code にチェックを入れて FileGo を選択する。
フォーマットの範囲は Whole file を選ぶほうがいいだろう。
既存コードがあって、そのフォーマットがイケてない場合は Changing line にしないと Diff がむやみに増えるのだけど、 Golang は gofmt で整える習慣があるので大丈夫だろう。

そして Optimize imports にもチェックを入れて、 FilesGo を設定しておく。

これでファイル保存時に自動的にコードをフォーマットしてくれる。

Hello Worldしてみる

新規プロジェクトのダイアログを開き、 LanguageGo を選択する。その時、 GORROT を指定する必要がある。
予め Preferences で設定しているので何らかの選択肢はあるはずなので選択する。

image.png

プロジェクトができたら、Goのファイルを追加する。

image.png

次の内容でmain.goという名前でファイルを作る。

package main

import "fmt"

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

コードの左に表示される緑の三角矢印をクリックして Run 'go build main.go' を選択すると実行できる。

image.png

次のように表示されればOK

image.png

デバッガ

コードの左に表示される緑の三角矢印をクリックしてDebug 'go build main.go' を選択するとデバッガも使える。便利。

  1. https://zenn.dev/yacchi21/articles/dd6d41b50fa1be

6
3
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
6
3