繁体   English   中英

在 IntelliJ 中,导入未加载,即使启用了 go 模块集成

[英]In IntelliJ imports are not loading, even though go modules integration is enabled

当使用带有 Go 插件的 IntelliJ IDEA 或 GoLand 并使用 Go 1.11 或更新版本时,您可以通过转到 Preferences -> Languages & Frameworks -> Go -> Go Modules (vgo) 启用 Go 模块并勾选 81882408 Modules (vgo) 框并选中 8182406 'Enable882406 (vgo) 整合'。

当你有一个由go mod init正确初始化的项目,因此有一个go.modgo.sum文件时,它将在使用go build或通过按绿色播放图标从 IntelliJ 构建时下载依赖项。

但是,远程依赖项的导入语句可能仍然是红色的,即使它们似乎已经下载并出现在go.mod文件中。

奇怪的是,go 项目实际上将从命令行运行,而不是从 IntelliJ 中运行。 为什么会这样,我该如何解决?

这种方法不起作用的原因与 IntelliJ 中的配置有关。 这就是为什么它可以从命令行工作,而不是在 IntelliJ 中。

有两种方法可以解决这个问题:

  1. 进入 Preferences -> Languages & Frameworks -> Go -> Go Modules (vgo) 并确保未选中“供应商模式”框。
  2. 确保您的 IntelliJ 项目中有一个名为“vendor”的文件夹。 现在可以安全地选中“供应商模式”框。

使用第一种方法时,可能会重新下载go.mod文件中定义的依赖项,例如当 go 项目从这些依赖项不在本地包注册表中的位置运行时。

使用第二种方法,依赖项被放在“供应商”文件夹中,不一定需要重新下载,它们在某种程度上是项目的一部分。

解决此问题的一种方法是更改 IntelliJ 中的设置。

导航到帮助 -> 编辑自定义属性并添加:

idea.max.intellisense.filesize=3000000

重新启动程序,以便重新加载设置。 当所有其他提到的解决方案都不起作用时,这对我有用。

当我将 AWS SDK 用于 Go (1.18) 和 IntelliJ 时,我必须这样做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM