IntelliJ有类似于Eclipse中的组织导入功能吗? 我所拥有的是一个Java文件,其中有多个类缺少它们的导入。例子:

package com.test;
public class Foo {
    public Map map;
    public JTable table;
}

在Eclipse中,我可以使用组织导入,它会自动导入java.util.Map和javax.swing.JTable。在IntelliJ中,我必须单独进入每个类,选择它,然后按Alt-Enter。有一个优化导入功能,但它所做的一切似乎都是对现有的导入进行排序和扩展。

我使用的是IntelliJ 10.5。


当前回答

我最终想出了一个解决这个令人沮丧的问题的方法。我对这个变通办法不是很满意,但总比什么都没有强。

基本上,在粘贴源代码并修复了明确的导入之后,只需按F2来突出显示下一个编译器错误。如果当前错误是缺少导入错误,按Alt+Enter,然后按Enter选择Import选项,然后选择正确的导入。然后再按F2键。

其他回答

2015年7月——我得出结论,IntelliJ不支持用单个函数自动解析导入。“组织导入”只是删除未使用的导入,它不解析未导入的类型。Control-Space解析单个未导入的类型。不存在解决所有类型导入的单个操作。

去帮助->找到动作(快捷方式为Cntl + Shift + A)和类型优化导入(快捷方式为Cntl + Alt + O)

ALT+ENTER是远离eclipse的习惯,在IDEA为我鼠标不工作,所以在设置> idset> Keymap>显示意图动作和快速修复我把它改为鼠标左键单击,它不支持鼠标移过来!但鼠标左键点击是OK的,最接近我的意图。

Ctrl + Alt + O(代码→优化导入…)是你正在寻找的,无论是在Windows/Linux和macOS键盘地图。

它说“优化”,但是,如果配置为这样做,它也会:

组织现有的导入 删除不需要的导入 添加新的所需导入 动态添加明确的导入

你可以在Dave描述的“设置→编辑器→常规→自动导入”下调整自动导入设置。

您也可以在“设置→编辑器→代码样式→Java→导入”下修改导入的自动排序方式。

在“设置->编辑器->通用->自动导入”下,有几个关于自动导入的选项。只有明确的导入可以自动添加;这是其中一个选项。