go getが失敗する場合の対処(unrecognized import path)
問題
go getコマンドでライブラリをダウンロードする際にエラーが出てしまっていました。その対処法を簡単ですが記します。
前回の記事のように私はIntelliJ IDEAで個別にGo SDKのパスを指定していたため、エラーメッセージが出ているもののIDE上では正常に動作していました。コマンドラインツールを導入する際に気づくことになりました。
$ go get github.com/revel/revel
とすると
package github.com/revel/revel imports bufio: unrecognized import path "bufio" package github.com/revel/revel imports bytes: unrecognized import path "bytes"
のようにメッセージが表示されます。あまりエラーメッセージみたいではないように見えてしまうので見逃していましたが、正常な場合はこのようなメッセージが出ずにダウンロード、ビルドまで完了します。
解消
エラーメッセージの意味としてはpathが正しくないということなので、GOROOTを見直します。おそらく正しくないパスとなっていると思います。
(homebrewでgo1.4をインストールした場合は/usr/local/Cellar/go/1.4/libexecが正しいパスとなります。)
ここで修正すれば解消されるのですが、go1.4ではGOROOTを指定しなくても良いとのことなので、修正せずそのままGOROOTを消すことでも解消されます。