如何在 IntelliJ 中停止通配符 Java 包导入

Posted

技术标签:

【中文标题】如何在 IntelliJ 中停止通配符 Java 包导入【英文标题】:How do I stop wildcard Java package imports in IntelliJ 【发布时间】:2014-12-01 06:55:52 【问题描述】:

在 IntelliJ Java IDE 上,当我使用键盘快捷键导入类或采用建议的导入时,IntelliJ 会导入整个包,例如

public static void main(String[] args) 

  List list = new LinkedList();

 

将导致此导入行

java.util.*;

我更喜欢 IDE 不进行包级导入和导入显式类。 我想在全局级别设置这个,所以我不必在每个项目中处理这个。 有没有办法做到这一点?

我在 Mac OS X 10.8.5 上使用 IntelliJ 13.0.2

谢谢

【问题讨论】:

【参考方案1】:

打开首选项并搜索“导入”。这将缩小您需要查看的列表。屏幕截图显示了何时使用单个导入 vs * 的选项(你可以看到我不喜欢星形导入)。

【讨论】:

谢谢你,这行得通,过去我试过这个,但是当我创建一个新项目时设置没有坚持。我将创建几个新项目,看看设置如何跨项目保持。 注意:还要确保将“Class count to use import with *”设置为较高的数字,如 Tracy Snell 的屏幕截图所示。另见***.com/questions/3348816/… 真的没有办法告诉 Intellij 15 永远不要使用加星标的导入吗?我的意思是不指定班级人数??!【参考方案2】:

File 菜单下

选择Settings (ctrl+alt+s)

选择Code Style

选择Java

选择Imports标签

General 下的复选框Use single class import 将确定是否要导入包或类。

Use fully qualified class names 复选框将不使用导入,而是将完整的类名直接插入代码中。

【讨论】:

感谢您的回答,非常详细且步骤清晰。 知道有用,但实际上不是问什么。 OP 想要保留 import 语句,只是没有 *s。【参考方案3】:

我有同样的问题。但是下面的过程解决了我的问题。

按下组合键ctrl+alt+O,则只会添加需要的包。

【讨论】:

饶,组合键ctrl+alt+o不会修复删除不必要的包吗?【参考方案4】:

请检查您是否有自动导入 取消自动导入 “设置→编辑器→自动导入”下的自动导入设置

【讨论】:

【参考方案5】:

IntelliJ 版本 2020.2.3(10 月构建)

首选项 > 编辑器 > CodeStyle > Java 在“常规”选项卡中 检查“使用单类导入” 检查“使用完全限定的类名”

【讨论】:

以上是关于如何在 IntelliJ 中停止通配符 Java 包导入的主要内容,如果未能解决你的问题,请参考以下文章

powershell 杀死IntelliJ java进程(在IntelliJ中停止Tomcat调试会话时,某些进程未被杀死并保持阻塞端口1099)

powershell 杀死IntelliJ java进程(在IntelliJ中停止Tomcat调试会话时,某些进程未被杀死并保持阻塞端口1099)

如何使IntelliJ Idea停止警告某些属性?

IntelliJ IDEA调试器可以自行设置断点吗?

每次重新加载 pom 时停止 IntelliJ IDEA 切换 java 语言级别(或更改默认项目语言级别)

idea中module分组怎么的在svn更新之后消失,intellij