如何阻止 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 所说,您可以稍后开始输入代码并导入包。有点方便。
我正在使用 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 所说,您可以稍后开始输入代码并导入包。有点方便。