IntelliJ Organizza le importazioni


254

IntelliJ ha una funzione di organizzazione delle importazioni simile a quella in Eclipse? Quello che ho è un file Java con più classi mancanti delle loro importazioni. Esempio:

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

In Eclipse ho potuto usare Organize Imports e avrebbe importato automaticamente sia java.util.Mape javax.swing.JTable. In IntelliJ devo andare individualmente a ciascuna classe, selezionarla, quindi premere Alt-Invio. Esiste una funzione Ottimizza importazioni ma tutto ciò che sembra fare è ordinare ed espandere le importazioni esistenti .

Sto usando IntelliJ 10.5.


17
Non riesco ancora a trovare un'alternativa a Ctrl + Shift + O di
eclipse

16
Hai provato Ctrl + Alt + O? Aggiunge automaticamente qualsiasi importazione unica e richiede di scegliere tra importazioni simili premendo Alt + Invio. Cordiali saluti, sto usando IntelliJ 12.
divesh premdeep

6
Tranne Ctrl + Alt + O non restituirà un'importazione che non può decidere su ... Ad esempio, se ci sono più importazioni tra cui scegliere (che sto cercando di capire come sceglierli, come non faccio ho il simbolo del carattere che suggeriscono sulla mia tastiera), quindi dirà "Importazione non utilizzata non trovata".
Azurespot,

Risposte:


356

Ctrl+ Alt+ O( Codice → Ottimizza importazioni ... ) è quello che stai cercando, sia su Windows / Linux che su keymap macOS.

Dice "Ottimizza", ma, se configurato per farlo, inoltre:

  • organizzare le importazioni esistenti
  • rimuovere le importazioni non necessarie
  • aggiungere nuove importazioni richieste
  • aggiungere al volo importazioni inequivocabili

È possibile ottimizzare le impostazioni di importazione automatica in " Impostazioni → Editor → Generale → Importazione automatica " come descritto da Dave .

Puoi anche modificare il modo in cui le importazioni vengono ordinate automaticamente in " Impostazioni → Editor → Stile codice → Java → Importazioni "


14
Continuo a ricevere voti negativi transitori, probabilmente a causa della confusione. Ho aggiornato la mia risposta a spiegare come questo non soddisfa la domanda iniziale.
Ryan Stewart,

4
Non funziona quando i nomi dei pacchetti in una dipendenza sono cambiati. Anche quando è ancora inequivocabile devo fare clic sul ClassName premuto Alt + Invio e Invio, per ogni classe interessata ...
Superole

7
Su Mac è anche CTRL + ALT + O (almeno in Android Studio 1.0)
jlapoutre,

9
Trovo abbastanza stupido che l'opzione "aggiungi importazioni non ambigue al volo" non sia selezionata per impostazione predefinita. Chi preferisce farlo da solo, classe per classe?
toni07,

3
Dovrebbe essere Settings → Editor → General → Auto Import?
Steve Pitchers,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.