2017-08-08 4 views
0

、私はのような依存関係をインポートします。Goはどのようにインポートして依存関係を解決しますか?ゴーで

ディレクトリがに見て行き、そしてどの順番でます
import "github.com/spf13/viper" 

+5

https://golang.org/pkg/go/build/#hdr-Go_Path –

+0

出荷時の動作では、Goは繰り返し性、分離性、コンセンサスには理想的ではありません。 golangの設定ガイドに従うと、すべてのコードを保存するはずのディレクトリが1つ存在します。そこに/ srcディレクトリと、作業する各プロジェクトの新しいディレクトリを作成します。 go getを使用して依存関係をインストールすると、リポジトリのソースコードが本質的に '$ GOPATH/src 'にドロップされます。 –

+1

@RahmatAligos 1.6解決/ベンダーはデフォルトで有効になっているので – rocketspacer

答えて

2

ルックアップ順:

  1. ベンダーフォルダ。
  2. 標準パッケージ。
  3. GOPATHフォルダ。

go help gopathの詳細については、Goを各ディレクトリで検索してください。

1

特定のシステムで検索順序と正確なパスを確認するためのすばやく簡単な方法は、go build errを実行することです。

これは、このような出力が生成されます

can't load package: package err: cannot find package "err" in any of: 
    C:\go\src\err (from $GOROOT) 
    \\FREENAS\Global Documents\Projects\Go\src\err (from $GOPATH) 
関連する問題