无法加载软件包:软件包:无法build立Go源文件

这是错误消息:

% go get can't load package: package .: no buildable Go source files in /Users/7yan00 % echo $GOPATH /Users/7yan00/Golang 

你将如何解决这个错误?

确保在Go项目源文件夹中使用该命令(如/Users/7yan00/Golang/src/myProject )。

一个替代( 类似于这个bug)是使用-d选项(请参阅go get命令 )

 go get -d 

-d标志指示下载软件包后停止; 也就是说,它指示不安装软件包。

看看是否有助于你的情况。


但更一般地说,正如本文所描述的那样 :

go get是包(s),而不是存储库。

所以如果你想要一个特定的包,比如go.text/encoding ,那么就使用它

 go get code.google.com/p/go.text/encoding 

如果你想要在该仓库中的所有软件包,使用...来表示:

 go get code.google.com/p/go.text/... 

您应该检查$ GOPATH目录。 如果包名称为空目录,则不要从存储库下载包。 例如,如果我想从github存储库获取“github.com/googollee/go-socket.io”包,并且在$ GOPATH中已经有一个空目录github.com/googollee/go-socket.io,不会下载软件包,然后抱怨目录中没有可build立的Go源文件。 首先删除一个空目录。

消息的另一个可能原因是:

无法加载包:….:无法build立Go源文件

正在编译的源文件有:

 // +build ignore 

在这种情况下,文件被忽略,不能按照要求build立。这种行为logging在https://golang.org/pkg/go/build/

要解决这个我的情况:

我不得不指定一个更具体的子包来安装。

错误:

 go get github.com/garyburd/redigo 

正确:

 go get github.com/garyburd/redigo/redis 

如果你想要所有的软件包,使用...来表示,如:

 go get code.google.com/p/go.text/...