Goで独自パッケージがimportできない
現在、以下の構成
1 | warbot-go |
この状態でhello.go
からtest.go
をimportできない。
まず、保存しようとするとコードが消える
これはVSCodeに入れているGolintが消してるっぽい
ログにはNot able to determine import path of current package by using cwd: c:\Users\Minato86\repos\MyRepository\warbot-go and Go workspace:
と記録されていた。
まずは今の状況を振り返っておくと
go mod init warbot-go
でmodを初期化済みgo env
のGO111MODULE
はonになっている
というわけで、今はGo Modulesが使える環境が整っているはずです。
main.go
とtest.go
は以下のようになっています
main.go
1 | package main |
test.go
1 | package test |
linterを無効にしてみる
VSCodeのワークスペース設定から、Lint On Saveをoffにしてみる。
結論からいうと、offにしたのに普通に実行された。
なんでや。と思ったら、どうやらこの動作はlinterの仕業ではなく、formatterの仕業みたい。
formatterを変えてみる
デフォルトのgoreturnsではなく、gofmtに変えてみた。
結論から言えば、うまくいった。
1 | package main |
消されずにこのように書くことができた。
また、普通に実行できた。
そういえば
Githubでリポジトリを公開する場合、こっちのほうが正しいっぽい
go mod init github.com/chipsnet/warbot-go
あとはimportもgithub.com/chipsnet/warbot-go/test
に書き換える。
↓GoなんもわからんからDiscordBotを作っている
GitHub - Chipsnet/warbot-go: WARbot written in golang