java - idea - intellij vs eclipse
IntelliJ Organizar Importaciones (13)
¿Tiene IntelliJ una función de Organizar importaciones similar a la de Eclipse? Lo que tengo es un archivo Java con varias clases que faltan sus importaciones. Ejemplo:
package com.test;
public class Foo {
public Map map;
public JTable table;
}
En Eclipse podía usar Organize Imports y automáticamente importaría java.util.Map
y javax.swing.JTable
. En IntelliJ tengo que ir individualmente a cada clase, seleccionarlo y luego presionar Alt-Enter. Hay una función de optimización de importaciones, pero todo lo que parece hacer es ordenar y expandir las importaciones existentes .
Estoy usando IntelliJ 10.5.
ALT + ENTRAR estaba lejos de eclipsar el hábito, en IDEA para mí, el mouse over no funcionó, por lo que al setting>IDESetting>Keymap>Show intention actions and quick-fixes
lo cambié al botón izquierdo del mouse. pero el clic izquierdo del mouse estaba bien y más cercano a mi intención.
Además de Optimize Imports
y Auto Import
, que fueron señaladas por @dave-newton y @ ryan-stewart en respuestas anteriores, vaya a:
- IDEA <= 13:
File menu > Settings > Code Style > Java > Imports
- IDEA> = 14:
File menu > Settings > Editor > Code Style > Java > Imports
(gracias a @ mathias-bader por la sugerencia)
Allí puede ajustar la agrupación y el orden o las importaciones, " Class count to use import with ''*''
", etc.
Nota:
Desde IDEA 13 puede configurar las configuraciones predeterminadas del proyecto desde la "página de inicio" de IDEA: Configure > Project defaults > Settings > ...
Entonces, cada nuevo proyecto tendrá esas configuraciones predeterminadas:
Atajo para Mac: (ctrl + opt + o)
En "Settings -> Editor -> General -> Auto Import"
hay varias opciones con respecto a las importaciones automáticas. Solo las importaciones no ambiguas pueden agregarse automáticamente; Esta es una de las opciones.
En IntelliJ 14, la ruta a la configuración para la importación automática ha cambiado. El camino es
IntelliJ IDEA-> Preferencias-> Editor-> General-> Importación automática
luego siga las instrucciones de arriba, haciendo clic en Agregar importaciones inequívocas sobre la marcha
No puedo imaginar por qué esto no se establecería de forma predeterminada.
Ese complemento realizará automáticamente la acción "organizar importación" en el archivo guardado: https://github.com/dubreuia/intellij-plugin-save-actions .
Para instalar: "Archivo> Configuración> Complementos> Buscar repositorios ...> Buscar ''Guardar acciones''> Categoría ''Herramientas de código''". A continuación, active la acción guardar "organizar importación".
Finalmente creé una solución a este problema frustrante. No estoy completamente contento con la solución, pero es mejor que nada.
Básicamente, después de pegar el código fuente y se solucionan las importaciones no ambiguas, solo presione F2
para resaltar el siguiente error del compilador. Si el error actual es un error de falta de importación, presione Alt+Enter
, luego Enter
para seleccionar la opción Import
, luego seleccione la importación correcta. Luego, presione F2
nuevo.
Julio de 2015: he concluido que IntelliJ no admite la resolución automática de importaciones con una sola función. "Organizar importaciones" simplemente elimina las importaciones no utilizadas, no resuelve los tipos no importados. Control-Space resuelve un solo tipo no importado. No existe una sola acción para resolver las importaciones de todos los tipos.
Si falta solo una importación (el nombre de la clase tiene un subrayado rojo), haga clic y pase el mouse sobre ella, y aparecerá una declaración de importación sugerida en azul. Si pulsa, Alt + Intro en este punto, la importación se incluirá en el archivo y el subrayado rojo debería desaparecer.
Simplemente mueva el mouse sobre la vista que falta y presione las teclas ALT + ENTER
navegue hasta el archivo donde desea organizar las importaciones o simplemente haga clic en el paquete completo o incluso haga clic en el proyecto que presione CTRL + ALT + O
Ctrl + Alt + O ( Código → Optimizar importaciones ... ) es lo que está buscando, tanto en los mapas de teclas de Windows / Linux como macOS.
Dice "Optimizar", pero, si está configurado para hacerlo, también:
- organizar las importaciones existentes
- eliminar las importaciones innecesarias
- agregar nuevas importaciones requeridas
- Añadir importaciones inequívocas sobre la marcha
Puede ajustar la configuración de importación automática en " Configuración → Editor → General → Importación automática " como lo describe Dave .