【问题标题】:Can't run test function in GoLand: cannot find package "."无法在 GoLand 中运行测试功能:找不到包“。”
【发布时间】:2020-05-01 04:32:51
【问题描述】:

我使用 VS Code 作为我的代码编辑器,使用 Go 构建服务已经快一年了。然后,我尝试切换到 GoLand。但是,当我尝试运行测试功能时,出现错误:cannot find package "." 有什么问题?

注意:我使用 go 模块作为 go 依赖管理工具。当我使用 dep (在另一个项目中)时,运行测试功能时没有错误。我的项目在 GOPATH 中。

【问题讨论】:

  • 您使用模块还是供应商的软件包? Goland 有自己的 GOPATH 概念,可能没有使用系统环境一。检查“项目首选项”->“Go”->“GOPATH”是否设置了正确的项目 GOPATH 或“使用系统环境中定义的 GOPATH”。
  • 我在 Go > Go Modules 中选中了“启用供应商支持”,我看到在 Go > GOPATH 中选中了“Use GOPATH that's defined in system environment”。

标签: go jetbrains-ide goland


【解决方案1】:

请确保在您的项目的根目录(即$GOPATH/src/<Project-name>)中定义了一个有效的go.mod 文件。

如果您没有,您可以使用 shell 使用go mod init 命令创建一个。更多信息 - https://github.com/golang/go/wiki/Modules

之后,请尝试从 shell 运行测试。首先cd 进入测试文件所在的目录。然后,使用go test . -test "<TestName>" -v 运行您的测试。如果问题消失,您可以从 IDE 运行测试,它应该可以正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-08
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 1970-01-01
    • 2020-06-02
    • 1970-01-01
    • 2012-12-29
    相关资源
    最近更新 更多