我有一个一次性的项目。在这个项目中,例如我有一个 lib_project
是到另一个目录的符号链接(symbolic link),例如:github_project
pull 源代码到本地后,我更新了另一个git子模块(github_project
是一个子模块)。然后我去这里编译项目。
之后,我转到我的主项目并尝试运行命令 go。我遇到异常:
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
存在。我可以 cd 到这个并打开文件。看起来 Go 无法识别符号链接(symbolic link)文件夹(在本例中是 lib_project
)
最佳答案
Go 工具故意不遵循符号链接(symbolic link)。确保你的 GOPATH 中没有任何内容,并且始终使用相对于 $GOPATH/src/
的完整导入路径来安装包,以及相对于 vendor/
目录对于销售包。
关于git - Go:无法在符号链接(symbolic link)中打包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39918756/