【发布时间】: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