2016-10-07 9 views
-1

私は1つのプロジェクトを行っています。 github_projectGo:シンボリックリンクでパッケージ化できません

Iは、ローカルにソースコードを引き出した後、私は別のGitのサブモジュールを更新(github_project一つのサブモジュールである):このプロジェクトでは、例えば、私は、例えば、別のディレクトリへのシンボリックリンクであるlib_projectを有します。そして私はここに行き、プロジェクトをコンパイルします。

その後、私のメインプロジェクトに行き、コマンドを実行しようとします。私は例外を満たす:

package github.com/main_project/test.go: cannot find package "github.com/main_project/lib_project/some_random_file.go" in any of: 

     /usr/local/Cellar/go/1.7.1/libexec/src/github.com/main_project/lib_project/some_random_file.go (from $GOROOT) 

     /Users/my_user/Documents/go/src/github.com/main_project/lib_project/some_random_file.go (from $GOPATH) 

私がテストし、ディレクトリgithub.com/main_project/lib_project/some_random_file.goがexsitであることを確認しています。私はこれにcdしてファイルを開くことができます。 Goはシンボリックリンクフォルダ(この場合はlib_project)を認識しないようです。

答えて

3

Goツールは意図的にシンボリックリンクをたどりません。 GOPATHには何も含まれていないことを確認し、インストールされたパッケージの場合は$GOPATH/src/、付属パッケージの場合はvendor/ディレクトリを基準にした完全なインポートパスを常に使用してください。