【问题标题】:How do I stop wildcard Java package imports in IntelliJ如何在 IntelliJ 中停止通配符 Java 包导入
【发布时间】: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

谢谢

【问题讨论】:

    标签: java intellij-idea import ide


    【解决方案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 在“常规”选项卡中 检查“使用单类导入” 检查“使用完全限定的类名”

      【讨论】:

        最近更新 更多