【问题标题】:Import module located in sub folder in Goland IDE导入模块位于 Goland IDE 的子文件夹中
【发布时间】:2021-06-24 05:21:57
【问题描述】:

如何让 Goland 正确地检查我的 go.mod 并且不报告我在主项目的子目录中维护的模块的“缺少依赖项”错误?

我正在尝试遵循hashicorp's vault project 中的模式,我在子文件夹中维护一个api 模块(其他人可以导入该模块,而无需拖入我的主项目使用的所有部门。)就像在保险库中一样,我在主项目的go.mod 中通过url 引用api 模块,并用指向相对路径位置的replace 覆盖它。

module github.com/hashicorp/vault

go 1.16

replace github.com/hashicorp/vault/api => ./api

// ...
require (
    // ...
    github.com/hashicorp/vault/api v1.0.5-0.20210210214158-405eced08457
    // ...
)

从构建的角度来看,所有这些都按预期工作(以及源代码中的依赖项解析),但是 Goland 以红色突出显示了我的主项目 go.mod 中的 import 语句和 replace 语句(错误是“缺少依赖项”)。红色灯泡提示我尝试过“同步依赖项”,但在“成功完成”消息之后,错误仍然存​​在。

我正在使用 Goland 2020.3.5 并转到 1.16.3。我的项目在我的 GOPATH 之外,我在 Goland 设置菜单中启用了 go 模块。

重申一下,一切都正确构建,但是我的 go.mod 的 linting 就像缺少依赖项错误一样。

【问题讨论】:

  • 更新到2021.1.3版本有用吗?
  • 哇!升级成功了 - 为什么不是我尝试的第一件事?谢谢!

标签: go go-modules goland


【解决方案1】:

升级到最新版本的 Goland (2021.1.3) 解决了这个问题。 谢谢@s0xzwasd!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    • 2023-02-02
    • 2012-12-13
    • 2017-06-07
    • 2021-06-02
    • 1970-01-01
    相关资源
    最近更新 更多