我正在使用Google Cloud Platform上的BigQuery API,并且我已经完成了Golang客户端库的安装。
当我尝试编译时,我看到以下错误:
[root@server ~]$ go install github.com/user/program
# github.com/user/program/handler
go/src/github.com/user/program/handler/file1.go:228: undefined:
"cloud.google.com/go/bigquery".ValueList
go/src/github.com/user/program/handler/file1.go:259: undefined:
"cloud.google.com/go/bigquery".ValueList
228的违规行是:
227 for {
228 var values bigquery.ValueList
229 err := it.Next(&values)
在文件顶部我导入包,通常是
import "cloud.google.com/go/bigquery"
并且已经注意为Golang安装客户端库 https://cloud.google.com/bigquery/docs/reference/libraries#client-libraries-install-go
我可以看到cloud.google.com包包含在我的GOPATH中,我看到其中的文件中的ValueList类型decleration。因此令人费解的是我收到了这个错误。
更重要的是:我可以在我的Windows机器上正常编译,没有错误。只有当我尝试在我的CentOS VM上做同样的事情时才遇到这个问题。两者都在运行go go.6.3.3。
谢谢。
答案 0 :(得分:0)
@Spikey,
嗨,请确保您安装了正确的客户端。 原因如下:
安装后go get -u cloud.google.com/go/bigquery我看到他们没有有导出的ValueList类型(!)。只有估价者,即未被出口。查看~go / src / google.golang.org / cloud / bigquery / value.go第39行
但是,他们确实在文档(!)中将ValueList作为导出类型提及,例如:
此外,如果直接查看以下内容,ValueList是导出的类型:https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/bigquery/value.go
因此,关于安装正确的Google客户端存在困惑。
希望这有帮助!