私は私のような構造を持っているプログラムを記述しようとしています:ゴーカスタムパッケージのインポートエラー
Go/src/
-github.com
-myname
-hello
main.go
-vector
vector.go
私のようなコマンドを使用してmain.go
ファイルの内部の私のコードでパッケージをインポートする場合:
import(
"vector"
)
私は、エラーメッセージが表示されます。
Can't find package "vector" in any of:
C:\Go\src\vendor\vector (vendor tree)
C:\Go\src\vertex (from $GOROOT)
C:\Go\src\github.com\myname\src\vertex (from $GOPATH)
は、なぜそれがを追加しています3210最後の行に? srcをhelloフォルダに置き換えてはいけません。なぜなら、そこからファイルを実行しているからです。また、それは私に奇妙に見えるgithub.com/myname/hello/vertex
のような完全なファイル構造からインポートすると実行されます。
私はプログラムとのやりとりを簡単にするためにgo run hello.go
を使用して実行しています。 、そして常にフルインポートパスを使用するためにそれが始まるあなたのケースでは、標準です:(Iが最初に言ったように、ない$GOROOT
!編集)
私が正しく理解していれば、私の個人的なコードは '$ GOROOT/src'に入っていますが、他の人のコードからリポジトリをインポートすると、' $ GOROOT/src/github.com/username/reponame'フォルダ? – Rob
ユーザーのコードは、$ GOPOO [/ src]ではなく、$ GOPATH [/ src]の下にあるはずです。 – cd1
@ cd1 ugh、非常に申し訳ありませんが、 – twotwotwo