Go 没有检测到 `sync` 包

我收到error: reference to undefined identifier ‘sync.Pool’消息,这在 Playground 中有效。我应该怎么办?


package main


import (

  "fmt"

  "sync"

)


func main() {

  var wg sync.Pool

  fmt.Println(wg)

}


慕桂英3389331
浏览 339回答 2
2回答

翻翻过去那场雪

如果您从 source 安装 go,请检查$GOROOTet ^$GOROOT_FINAL所指的内容:如果它们不同,您需要将您GOROOT的GOROOT_FINAL.$GOROOT未明确设置时安装的二进制文件和脚本采用的值。它默认为 的值$GOROOT。如果您想在一个位置构建 Go 树,但在构建后将其移动到其他位置,请设置$GOROOT_FINAL为最终位置。从评论中,OP 提到:go version 打印出来go version xgcc (Ubuntu 4.9.1-0ubuntu1) 4.9.1 linux/amd64并且$GOROOT/pkg/linux_amd64/sync.a确实存在。我建议确保$PATH包含$GOROOT/bin JimB添加的内容:更具体地说,请确保您$PATH包含$GOROOT/bin正确的GOROOT. 我认为您有两个安装使这更令人困惑。

眼眸繁星

您没有安装正确版本的 Go。sync.Pool仅在 Go 1.3 中添加。尝试更新您的本地 go 包,验证您正在运行 1.3,然后重试。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go