Go mod 报错:package xxx is not in GOROOT,如何解决?

go mod 报错:package xxx is not in goroot,如何解决?

go mod 报错:package xxx is not in goroot

最近在使用 go mod 时,一位初学者遇到了 package xxx is not in goroot 的错误。以下是问题描述和解决方案:

问题:

一位初学者将一个 github 项目拉取到本地并创建了一个 demo。在运行 go run main.go 时,遇到了这个问题。项目包含以下文件:

  • go.mod
  • main.go
  • goblog/pkg/conf/setting.go
  • goblog/routers/router.go

错误信息:

go.mod
main.go

环境变量:

go111module="on"

解决方案:

检查 go111module 环境变量是否设置为 "on"。如果未设置或设置为 "off",会阻止 go mod 正确工作。

如何设置 go111module:

在终端中运行以下命令:

export GO111MODULE=on

然后重新运行 go run main.go。如果错误仍然存在,请检查以下内容:

  • 确保项目目录中的 go.mod 文件已正确导入依赖项。
  • 确保代码中导入的包与 go.mod 文件中指定的包一致。
  • 确保 go 版本是最新的。

以上就是Go mod 报错:package xxx is not in GOROOT,如何解决?的详细内容,更多请关注其它相关文章!