Goのメモ

packageとmodule

example.com/foo というモジュール内でbar1とbar2にパッケージが別れているときには

package bar1

import "example.com/bar2"

という感じで素直にimportすればよい.

一方でローカル開発時に2つのモジュールfoo1とfoo2がある場合はfoo1がfoo2を参照している場合はgo.modに

module exmpale.com/foo1
go 1.17
replace exmaple.com/foo2

という記載をしないといけない. これはgo modで

go mod edit -replace example.com/foo2=/path/to/foo2

という風に書き換えるらしい. Goの公式ドキュメントに書いてあった.

go.dev