ChatGPT解决这个技术问题 Extra ChatGPT

禁用 IntelliJ 加星标(包)导入?

我是迁移中的 Eclipse IDE 用户,并且正在学习 IntelliJ IDEA 9。

默认情况下,Eclipse IDE 在您从同一个包中导入 99 个类之前不会使用星号导入,因此它几乎不会发生。

但是 IntelliJ IDEA 似乎太热衷于这样做,我不知道如何禁用它。

例如,在输入 JList 然后 ALT + ENTER 以自动导入后,整个 javax.swing 包将被导入,而不仅仅是我指定的类。

我尝试从自动完成中排除 javax.swing,但这只会阻止 任何 Swing 类被建议,这会适得其反。

智能 9?第 16 版即将发布。升级到社区版或购买许可证。

C
CherryDT

您可以在此处设置此设置。

在 IDEA 14+ 中,顺序为:

Settings > Editor > Code Style > Java > Imports > Class count to use import with '*'

在旧版本的 IDEA 中:

Settings -> Java -> Code Style -> Imports -> Class count to use import with '*'

该功能不能被禁用。您需要将其设置为较高的值,例如 99。

在 2016.1.1 版本中您还应该删除 Packages to Use Import with '*' 下的行,例如 import javax.*;


现在 Class count to use import with '*'Names count to use static import with '*' 都设置为 99 以复制 Eclipse 的行为。谢谢!
如果将此值设置为 0,而不是设置为较高的数字,似乎可以工作
门槛对我来说应该很高。如果我将该阈值设置为 0,该功能将保持启用状态。最糟糕的是,我最终到处都是星星进口(IDEA 2017.1)。
0 摧毁了我,恢复并设置为 1000
这是特定于语言的,因此如果您使用的是 Kotlin 或混合项目,请记住在 Kotlin 下进行设置。
R
ROMANIA_engineer

IntelliJ 想法:

14 & 15 & 16 EAP 文件 > 设置... > 编辑器 > 代码样式 > Java > 导入 > 在常规区域中为类计数添加一个大数字以使用带有“*”的导入:/名称计数以使用带有“*”的静态导入':

IntelliJ 想法:

12 和 13 文件 > 设置... > 代码样式 > Java > 导入 > 在常规区域中添加一个大数字,以使用带有“*”的导入:PS:Java 在路径中的代码样式之后。


真的没有办法告诉 Intellij 15 永远不要使用加星标的导入吗?我的意思是没有指定班级人数??!
这就是我所怀疑的——但看起来很奇怪!
这太疯狂了。我喜欢加星标的进口商品。又是什么坏处?真的。 (不是在某些名称重叠的假设情况下。)
@MarkHu 当有人在 IDE 范围之外(例如在 Github 上)查看您的代码时,很难弄清楚一个类来自哪个包。
u
user3573712

您还必须从“使用 import with * 的包”列表框中删除包名称,该列表框位于“Class count to use import with”文本框下方。我认为默认情况下 Swing 和 AWT 就在那里。我仍然有 import javax.swing.;即使我将课程计数设置为 999,也添加了。我使用减号按钮从框中删除了 Swing 和 Awt,然后它就起作用了。