Go言語の開発環境構築したメモ
メモです。
Goをインスコするためにgvmをインスコする
Ubuntu使ってるんですがaptにあったのなんかすごい古いっぽかったのでソースインストールかなぁと思ってたら、どうやらgvmと言うrbenvみたいなやつがあるらしくそれ使ったほうがいいとのことです。
gvmをインスコするためにgvmを削除する
gvmって聞いて、あれ?Groovyでもそんなんなかったっけ?と思ったらやっぱりありました。なんかそれでgvmはsdkmanに名前変わったらしいです。
gvm(groovyの方)は起動して指示に従えばさくっとsdkmanに更新され、互換性のために.gvmディレクトリが.sdkmanディレクトリへのシンボリックリンクに変わったり、gvmコマンドがsdkコマンドへのaliasに変えられたりします。
が、この状態でgvm(golangの方)をインスコするといろいろ競合してつらい思いをすることになるっぽいので、sdkmanへの更新が終了したらaliasと.gvmリンクを削除しておきます。
pkgsetを作る
golangはGOPATH決めたらライブラリ含め全てのソースはその配下に収める流儀で好きな場所にアプリディレクトリ作れないらしく、例えばIDEがworkspaceとかprojectsディレクトリとかを持ってる場合、クッこれが世界の選択か…と言う気分になるらしいです。
gvm使うとpkgsetとかいうのが作れて、任意のGOPATHが作れていろいろ切り替えられるらしいです。
mnrtks's blog | gvmを用いてRevelの開発環境を作成
に従って、
cd ~/IdeaProjects mkdir hogehoge cd hogehoge gvm pkgset create --local gvm pkgset use --local
とすると、アプリごとにローカルなpkgsetを作れていろいろ分離できるとのこと。
IntelliJ IDEAにgolangのプラグイン入れる
IDE厨なので何をするにもIDEが無いと何も出来ないのでプラグイン入れます。
http://stormcat.hatenablog.com/entry/2015/04/13/123000
見れば大体大丈夫だと思います。
ただ、ローカルのpkgsetの様子まではIDEAさん分からないのでGOPATH分からんぞみたいなことを警告してきます。
その場合は、上記の例で言うとhogehogeディレクトリを指定すれば大丈夫っぽいです。
Hello World 実行する。
src/{yourdomain}/{name}/{app} でHello World書きます。
コード右クリックして実行選ぶとビルドされて実行され、golang完全にマスターできます。
バージョン管理
hogehoge/src/{yourdomain}/{name}/{app} でgit initするとのことです。
まとめ
なんか世界観がいろいろ違って大変でした(こなみかん)