IntelliJ组织进口

Ste*_*Kuo 242 java intellij-idea

IntelliJ是否具有类似于Eclipse中的Organize Imports功能?我所拥有的是一个Java文件,其中有多个类缺少其导入.例:

package com.test;
public class Foo {
    public Map map;
    public JTable table;
}
Run Code Online (Sandbox Code Playgroud)

在Eclipse中,我可以使用Organize Imports,它会自动导入两个java.util.Mapjavax.swing.JTable.在IntelliJ中,我必须单独转到每个类,选择它,然后按Alt-Enter.有一个Optimize Imports功能,但它似乎只是排序和扩展现有的导入.

我正在使用IntelliJ 10.5.

Rya*_*art 340

Ctrl在Windows/Linux和macOS键映射上,您正在寻找+ Alt+ O(代码→优化导入...).

它说"优化",但是,如果配置为这样做,它还将:

  • 组织现有的进口
  • 删除不需要的导入
  • 添加新的必需导入
  • 动态添加明确的导入

您可以按照Dave所述,在" 设置→编辑器→常规→自动导入 " 下调整自动导入设置.

  • 我不断得到暂时性的投票,可能是由于混乱.我已经更新了我的答案来解释这**如何*满足原始问题. (14认同)
  • 我发现默认情况下不会选中"动态添加明确的导入"这一选项是非常愚蠢的.谁更喜欢自己,一个一个一个地做这个? (8认同)
  • 在Mac上它也是CTRL + ALT + O(至少在Android Studio 1.0中) (6认同)
  • 当依赖项中的包名更改时,它不起作用.即使它仍然是明确的,我必须为每个受影响的类点击ClassName命中Alt + Enter和Enter ... (4认同)
  • 应该是`设置→编辑→常规→自动导入`? (3认同)
  • 只是抬头,这个答案很好,但正确的答案应该是,**Intellij没有像Eclipse**那样强大的自动导入功能.如果您要导入不明确的类名,则无法选择正确的选项对话框. (3认同)
  • 我遇到了这个问题.最简单的解决方案是删除坏线,然后正常的程序将添加一个好的线路. (2认同)

Dav*_*ton 98

"Settings -> Editor -> General -> Auto Import"有关于自动进口几个选项.只能自动添加明确的导入; 这是其中一个选择.

  • 它现在是`设置>编辑器 - >常规>自动导入` (7认同)

Roh*_*wal 45

简单和简短的解决方案对我有用.

转到File- > Settings- > Editor- > Auto Import- > Java(左侧面板)并进行以下操作:选中" Add unambigious imports on the fly"和" Optimize imports on the fly"的复选框

请参阅此.

在此输入图像描述


t0r*_*r0X 42

除了Optimize ImportsAuto Import@ dave-newton和@ ryan-stewart在之前的答案中指出的那些,请转到:

  • IDEA <= 13: File menu > Settings > Code Style > Java > Imports
  • IDEA> = 14 :( File menu > Settings > Editor > Code Style > Java > Imports感谢@ mathias-bader提示!) 设置对话框

在那里,您可以微调分组和订单或导入," Class count to use import with '*'"等.

注意:
从IDEA 13开始,您可以从IDEA"起始页"配置项目默认设置:Configure > Project defaults > Settings > ....然后每个新项目都将具有以下默认设置: 在此输入图像描述

  • 从IntelliJ IDEA 14开始,可以在"设置>编辑器>代码样式> Java>导入"下找到它 (7认同)

Ste*_*Kuo 42

2015年7月 - 我得出结论,IntelliJ不支持使用单一功能自动解析导入."组织导入"只是删除未使用的导入,它不解析未导入的类型.Control-Space解析单个未排序类型.没有单一的操作来解决所有类型的导入.

  • 这是我的经历.令人沮丧. (11认同)
  • @RyanStewart 它不会像 Eclipse 那样解决不明确的导入。当有歧义时 Eclipse 会提示,IntelliJ 忽略它。 (2认同)

Joe*_*Joe 9

在IntelliJ 14中,自动导入设置的路径已更改.路径是

IntelliJ IDEA->首选项 - >编辑器 - >常规 - >自动导入

然后按照上面的说明,单击添加明确的导入动态

我无法想象为什么默认情况下不会这样设置.


小智 8

导航到要组织导入的文件,或者只需单击整个,甚至单击项目,然后按CTRL + ALT + O

  • [这个答案已经存在](http://stackoverflow.com/a/8609200/363701)。您*可以*考虑添加额外的信息(“您可以单击整个包,甚至单击项目而不是按 CTRL + ALT + O”)作为对该答案的注释 (2认同)

小智 6

Mac 快捷键:(ctrl + opt + o)