Goland 显示未解析类型(实例,具体在 GCE 库中),但 core/tests 运行 很好("invalidate and restart" 解决方案在这里不起作用)

Goland showing Unresolved type (Instance, in GCE library specifically), but core/tests run fine ("invalidate and restart" solution not working here)

我在 Go 中使用 GCE 库以及 go 模块。

我发现,虽然它可以愉快地编译和运行单元测试,但它不会在 Goland IDE 中解析这些类型(例如 compute.Instance)。我正在使用 2020.2.

我首先通过手动编码添加了此依赖项(将 "google.golang.org/api/compute/v1" 添加到我的导入中,并让模块处理程序加载它需要的任何内容)。它将 google.golang.org/api v0.50.0 添加到我的 go.mod 文件中。

我已经尝试过旧的“无效并重新启动”方法,但它没有做任何事情。我有另一个项目,恰好加载了该模块的不同版本,并且在那个项目上运行良好。

我什至试过更核的版本(Invalidate(不重启),关闭项目,关闭IDE,删除.idea目录,删除~/.cache/JetBrains的内容).仍然没有骰子。

FWIW 我的 go 模块的版本是 go 1.15

您可以通过在导入语句上按 Command/CTRL+Click(或通过项目视图中的外部库菜单)导航到包源,并找到 compute-gen.go 文件和大小限制警告。 IDE 的行为符合预期。

作为解决方法,您可以调用 Help | Edit Custom Properties... 并添加以下行 idea.max.intellisense.filesize=8500000(取决于原始文件大小),然后重新启动 GoLand。请记住,IDE 在处理大文件时可能会很慢,即使它们没有在编辑器中打开也是如此。

您可以阅读有关 idea.properties 文件的更多信息 here