IntelliJ Organizar Importaciones

7 minutos de lectura

avatar de usuario
steve kuo

¿IntelliJ tiene una función Organizar importaciones similar a la de Eclipse? Lo que tengo es un archivo Java con varias clases que no tienen sus importaciones. Ejemplo:

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

En Eclipse, podría usar Organizar importaciones e importaría automáticamente ambos java.util.Map y javax.swing.JTable. En IntelliJ, tengo que ir individualmente a cada clase, seleccionarla y luego presionar Alt-Enter. Hay una función de Optimizar importaciones, pero todo lo que parece hacer es ordenar y expandir el existente importaciones

Estoy usando IntelliJ 10.5.

  • Todavía no puedo encontrar una alternativa al Ctrl+Shift+O de eclipse

    – arranque de la aplicación

    5 de marzo de 2013 a las 15:38

  • ¿Has probado Ctrl + Alt + O? Agrega automáticamente cualquier importación única y le pide que elija entre importaciones similares presionando Alt + Enter. Para su información, estoy usando IntelliJ 12.

    – bucear premprofundo

    8 de marzo de 2013 a las 13:19


  • Excepto que Ctrl + Alt + O no devolverá una importación sobre la que no puede decidir… Por ejemplo, si hay varias importaciones para elegir (que estoy tratando de averiguar cómo elegirlas, ya que no tienen el símbolo de carácter que sugieren en mi teclado), luego dirá, “Importación no utilizada no encontrada”.

    – Azurespot

    27 de abril de 2015 a las 7:30

avatar de usuario
ryan stewart

Control + alternativa + O (Código → Optimizar importaciones…) es lo que está buscando, tanto en mapas de teclas de Windows/Linux como de macOS.

Dice “Optimizar”, pero, si está configurado para hacerlo, también:

  • organizar las importaciones existentes
  • eliminar las importaciones innecesarias
  • agregar nuevas importaciones requeridas
  • agregue importaciones inequívocas sobre la marcha

Puedes sintonizar el importación automática ajustes en “Configuración → Editor → General → Importación automáticacomo lo describe Dave.

También puede modificar cómo se ordenan automáticamente las importaciones en “Configuración → Editor → Estilo de código → Java → Importaciones

  • Sigo recibiendo votos negativos transitorios, probablemente debido a la confusión. He actualizado mi respuesta para explicar cómo esto lo hace satisfacer la pregunta original.

    –Ryan Stewart

    14 de junio de 2013 a las 0:54

  • No funciona cuando los nombres de los paquetes en una dependencia han cambiado. Incluso cuando todavía no es ambiguo, tengo que hacer clic en ClassName, pulsar Alt+Enter y Enter, para cada clase afectada…

    – Superol

    21 de noviembre de 2013 a las 12:12

  • En Mac también es CTRL + ALT + O (al menos en Android Studio 1.0)

    – jlapoutre

    5 de enero de 2015 a las 19:21

  • Me parece bastante estúpido que la opción “agregar importaciones inequívocas sobre la marcha” no esté marcada de forma predeterminada. ¿Quién prefiere hacer esto solo, clase por clase?

    – toni07

    12 de febrero de 2015 a las 10:51

  • Debiera ser Settings → Editor → General → Auto Import?

    – Steve Lanzadores

    29/03/2017 a las 19:35

avatar de usuario
David Newton

Por debajo "Settings -> Editor -> General -> Auto Import" hay varias opciones con respecto a las importaciones automáticas. Solo las importaciones inequívocas pueden agregarse automáticamente; esta es una de las opciones.

  • No hay suficientes votos positivos para esta respuesta. Sí, la respuesta de @ ryan-stewart responde completamente a la pregunta del OP, pero esta respuesta proporciona la solución a la pregunta que el OP no hizo: ¿cómo soluciono esto para siempre, no solo cómo lo soluciono esta vez?

    –Jonathan E. Landrum

    13 mayo 2016 a las 20:27

  • Nieva Setting > Editor -> General > Auto Import

    – Afortunado

    13 de septiembre de 2016 a las 14:29

  • Lo arreglé agregando el cheque en classes

    – Andrea Bergonzo

    29/10/2017 a las 18:56

  • no funciona a nivel de paquete/carpeta/proyecto, ¿verdad? Hice un ‘ctrl + alt + o’ en el proyecto, src, java e hice mvn clean test… todavía tengo ‘símbolo no encontrado’ para el refactor reciente.

    – viejo monje

    5 de julio de 2018 a las 17:52

  • @old-monk Funciona con lo que sabe el editor; es más probable que algo en el refactor esté roto, pero es imposible decirlo.

    – David Newton

    5 de julio de 2018 a las 18:47

La solución simple y corta funcionó para mí.

Ir File -> Settings -> Editor -> Auto Import -> Java (panel izquierdo) y haga lo siguiente: Seleccione la casilla de verificación para “Add unambigious imports on the fly” y “Optimize imports on the fly

Consulte esto.

ingrese la descripción de la imagen aquí

  • no funciona a nivel de paquete/carpeta/proyecto, ¿verdad? Hice un ‘ctrl + alt + o’ en el proyecto, src, java e hice mvn clean test… todavía tengo ‘símbolo no encontrado’ para el refactor reciente.

    – viejo monje

    5 de julio de 2018 a las 17:52

avatar de usuario
t0r0X

Además de Optimize Imports y Auto Importque fueron señalados 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 pista!)
    Diálogo de configuración

Ahí puedes afinar la agrupación y ordenar o importar”,Class count to use import with '*'“, etc.

Nota:

desde IDEA 13 puede configurar los ajustes predeterminados del proyecto desde la “página de inicio” de IDEA: Configure > Project defaults > Settings > .... Luego, cada nuevo proyecto tendrá esa configuración predeterminada:
ingrese la descripción de la imagen aquí

avatar de usuario
steve kuo

Julio de 2015: llegué a la conclusión de 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.

  • Esta ha sido mi experiencia. Frustrante.

    – ayahuasca

    07/01/2016 a las 16:00

  • Esto también me hizo tropezar. Vea la solución de @rohit a continuación. Archivo -> Configuración -> Editor -> General -> Importación automática -> Java y marque las tres opciones que ha resaltado. Esto funcionó para mí.

    –Carl Rossman

    24/03/2016 a las 16:34

  • Es extraño que esta sea la respuesta aceptada, ya que es muy inexacta. Consulte stackoverflow.com/a/8609200/839646.

    –Ryan Stewart

    6 de diciembre de 2016 a las 6:48

  • @RyanStewart no resuelve las importaciones ambiguas de la misma manera que lo hace Eclipse. Eclipse le avisará cuando sea ambiguo, IntelliJ simplemente ignórelo.

    –Steve Kuo

    12 abr 2017 a las 18:21

  • Tuve la misma frustración, sin embargo, @Ryan tiene razón. CTRL ALT O , puede agregar las importaciones faltantes. Pero debe configurarlo en Configuración> Editor -> General> Importación automática, y marcar “Agregar importaciones inequívocas sobre la marcha”. Luego resuelve todas las importaciones en una clase.

    – Razvang

    2 de septiembre de 2021 a las 6:51

avatar de usuario
Martín Marconcini

navegar a la expediente donde desea organizar las importaciones o simplemente haga clic en todo paquete o incluso haga clic en el proyecto que presionar CTRL+ALT+O

  • Esta ha sido mi experiencia. Frustrante.

    – ayahuasca

    07/01/2016 a las 16:00

  • Esto también me hizo tropezar. Vea la solución de @rohit a continuación. Archivo -> Configuración -> Editor -> General -> Importación automática -> Java y marque las tres opciones que ha resaltado. Esto funcionó para mí.

    –Carl Rossman

    24/03/2016 a las 16:34

  • Es extraño que esta sea la respuesta aceptada, ya que es muy inexacta. Consulte stackoverflow.com/a/8609200/839646.

    –Ryan Stewart

    6 de diciembre de 2016 a las 6:48

  • @RyanStewart no resuelve las importaciones ambiguas de la misma manera que lo hace Eclipse. Eclipse le avisará cuando sea ambiguo, IntelliJ simplemente ignórelo.

    –Steve Kuo

    12 abr 2017 a las 18:21

  • Tuve la misma frustración, sin embargo, @Ryan tiene razón. CTRL ALT O , puede agregar las importaciones faltantes. Pero debe configurarlo en Configuración> Editor -> General> Importación automática, y marcar “Agregar importaciones inequívocas sobre la marcha”. Luego resuelve todas las importaciones en una clase.

    – Razvang

    2 de septiembre de 2021 a las 6:51

avatar de usuario
José

En IntelliJ 14, la ruta a la configuración de Importación automática ha cambiado. el camino es

IntelliJ IDEA->Preferencias->Editor->General->Importación automática

luego siga las instrucciones anteriores, haciendo clic en Agregar importaciones inequívocas sobre la marcha

No puedo imaginar por qué esto no estaría configurado de forma predeterminada.

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad