Help us understand the problem. What is going on with this article?

setup go-lang-idea-plugin for gae/go

More than 5 years have passed since last update.

go-lang-idea-plugin をgae/go開発用に設定してみました。

plugin installについては、 IntelliJ の Goプラグイン 1.0αを試す を参考にしました。

IntelliJ外の環境

IntelliJの外の環境としては以下の様な感じ

  • gae/go root
    • $HOME/bin/google-cloud-sdk/platform/google_appengine/root
  • gopath
    • $HOME/go
  • project workspace
    • $HOME/workspace/go-endpoints-unittest-example

goapp env

$ goapp env

GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/sinmetal/go:/Users/sinmetal/workspace/go-endpoints-unittest-example"
GORACE=""
GOROOT="/Users/sinmetal/bin/google-cloud-sdk/platform/google_appengine/goroot"
GOTOOLDIR="/Users/sinmetal/bin/google-cloud-sdk/platform/google_appengine/goroot/pkg/tool/darwin_amd64"
TERM="dumb"
CC="clang"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fno-common"
CXX="clang++"
CGO_ENABLED="1"

IntelliJ 設定

Go Libraries

Preferences -> Languages & Frameworks -> Go Libraries

Global Librariesにgopathとgae/goのrootを設定。
gopathは勝手に拾ってきてくれたりもするみたいだけど、僕の場合は拾ってきてくれなかったので、自分で都合の良いように設定した。

Screen Shot 2015-02-06 at 12.03.09.png

自分のProjectの中でpackageを切っている場合は、Project Librariesに、自分のProjectのworkspaceを設定した方が良いのかもしれない。

今回の場合だと、以下を設定するようになる。

$HOME/workspace/go-endpoints-unittest-example

Project

File -> Project Structure -> Project

gae/go gorootをSDKとして設定する

僕の場合だと、以下を設定している

$HOME/bin/google-cloud-sdk/platform/google_appengine/goroot

Screen Shot 2015-02-06 at 12.04.16.png

Platform Settings SDKs

Classpath

gae/go gorootとgopathを設定
ここを設定しておかないと、External Librariesに出てきてくれないので、適当にソースを見たい時にめんどうだ。

Screen Shot 2015-02-06 at 12.04.03.png

Sourcepath

gae/go gorootとgopathを設定
ここを設定しておかないと、補完が効かなかった。

Screen Shot 2015-02-06 at 12.35.14.png

Complete

まだ設定したばかりだけど、良さそうなイメージ。
もっと楽な設定とか、良い設定がある気はしている。
設定内容を変えたら、記事も更新していくつもり。

Screen Shot 2015-02-06 at 12.05.40.png

sinmetal
GCPUG Admin https://gcpug.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away