相対パスでimportできない場合は go.mod に module 名を書こう

今まで、$GOPATHの外でgoを書いているときにサブパッケージを作って、それをインポートするときに、以下のように指定していた。

import "./hoge"

だけど、最近はこの書き方は推奨されていないらしい。というかエラーになる。

Go Moduleでローカルパッケージを作成する - ソースコードから理解する技術-UnderSourceCode

go 1.11のmodules(vgo)が有効な環境で相対importが cannot find module for path でエラーになった話。 - podhmo's diary

このあたりを参考にすると。 go.modmodule モジュール名 という行を追加して

import "モジュール名/hoge"

とすることで対応可能とのこと。