如何阻止 GoLand 自动删除未使用的导入?

How to stop GoLand from auto removal of unused imports?

我正在使用 JetBrains GoLand,想知道是否有可能以某种方式禁用自动删除未使用的导入。之前查过JetBrains论坛,没有专门针对Goland的相关资料。

使用此功能是为了让您不会收到来自 Go 的未使用导入的编译错误。您可以通过以下方式停用该功能:

设置(首选项)> 转到 > 导入 > 即时优化导入

不过我的建议是保持原样,让 IDE 为您管理导入。

例如,您可以在 main 函数中开始输入 template.New,然后 IDE 将询问要导入哪个“模板”包,因为标准库中有两个包“text/template”和“html/template”。当只有一个包可用时,将自动导入。当您删除对“模板”包的最后引用时,IDE 将自动删除导入,从而允许您 运行 代码没有任何编译问题。

另一个解决方案是将您的导入命名为“_”。例如:import _ "your/package"。这样做会阻止自动删除。

GoLand 2021.2 及更高版本 (GO-11362) 中的行为略有变化。

以前的行为(2021.1.3 及更低版本):

当前版本(2021.2 及更高版本):

因此,它略有更新,没有理由禁用即时优化导入,但正如 dlsniper 所说,您可以稍后开始输入代码并导入包。有点方便。