GoLand 包索引在使用同一模块的多个版本时中断

GoLand package index breaks when using multiple versions of the same module

我需要在我正在处理的项目中使用 google.golang.org/api/compute api 的 v1 和 alpha 版本。在已经为相当多的代码使用 v1 版本之后,需要使用 alpha 版本,我需要同时使用两个版本。

当我导入 alpha 版本时,GoLand 索引中断,我失去了自动完成功能,并在导入 alpha 的包中出现一堆红色 text/lines。尽管如此,go 仍然 build/run 代码就好了。

我已经尝试清除我的 GoLand 缓存并重新编制索引,但我仍然遇到同样的问题。我还使用 go clean -modcachego mod tidy 清理了我的 go 缓存以再次下载并校验所有内容。

有什么我遗漏的东西会在 GoLand 中造成这个问题,但我的 go 代码仍然可以正常构建和运行吗?

您可以通过在导入语句上按 Command/CTRL+Click 导航到包源并找到 compute-gen.go 文件和大小限制警告。 IDE 的行为符合预期。

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

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