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。


当前回答

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

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

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

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

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

其他回答

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

IntelliJ IDEA->Preferences->Editor->General->Auto Import

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

我无法想象为什么这个不被默认设置。

该插件将自动执行“组织导入”操作文件保存:https://github.com/dubreuia/intellij-plugin-save-actions。

要安装:“File > Settings > Plugins > Browse repositories…”>搜索“保存操作”>分类“代码工具”。然后激活“组织导入”保存操作。

Mac的快捷方式:(ctrl + opt + o)

简单而简短的解决方案对我来说很有效。

点击文件->设置->编辑器->自动导入-> Java(左面板),做以下事情: 选中“动态添加明确的导入”和“动态优化导入”复选框

提到这一点。

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

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