Wyłączyć importowanie IntelliJ Starred (pakiet)?

195

Jestem migrującym użytkownikiem środowiska Eclipse IDE i uczę się, jak sobie radzić z IntelliJ IDEA 9.

Domyślnie Eclipse IDE nie użyje importu oznaczonego gwiazdką, dopóki nie zaimportujesz 99 klas z tego samego pakietu, więc praktycznie nigdy się to nie zdarza.

Ale IntelliJ IDEA wydaje się tylko zbyt chętny, aby to zrobić i nie mogę wymyślić, jak to wyłączyć.

Na przykład po wpisaniu, JLista następnie ALT+, ENTERaby zaimportować automatycznie, cały javax.swingpakiet jest importowany zamiast tylko określonej przeze mnie klasy.

Próbowałem wyłączając javax.swingz automatycznego uzupełniania, ale to po prostu przestaje żadnych klas Swing przed zasugerował, który jest przeciwny do zamierzonego.

Iain Samuel McLean Elder
źródło
IntelliJ 9? Wersja 16 jest już w drodze. Uaktualnij do wersji społecznościowej lub kup licencję.
duffymo

Odpowiedzi:

310

Możesz ustawić to ustawienie tutaj.

W IDEA 14 + sekwencja jest następująca:

Settings> Editor> Code Style> Java> Imports>Class count to use import with '*'

W starszej wersji IDEA:

Settings-> Java-> Code Style-> Imports->Class count to use import with '*'

Funkcji tej nie można wyłączyć. Musisz ustawić wysoką wartość, np. 99.

W wersji 2016.1.1 należy również usunąć wiersze pod Packages to Use Import with '*', npimport javax.*;

Colin Hebert
źródło
10
Teraz oba Class count to use import with '*'i Names count to use static import with '*'są ustawione 99na kopiowanie zachowań Eclipse. Dzięki!
Iain Samuel McLean Starszy
1
Wydaje się działać, jeśli ustawisz tę wartość na 0, a nie na wysoką liczbę
Alasdair McLeay,
3
Próg musi być dla mnie wysoki. Jeśli ustawię ten próg na 0, funkcja pozostanie włączona. Co najgorsze, wszędzie trafiam na gwiazdy (IDEA 2017.1).
Andrew
3
0 mnie zniszczyło, przywróciłem i ustawiłem na 1000
CodeMonkey
Jest to specyficzne dla języka, więc pamiętaj, aby ustawić to w Kotlin, jeśli używasz tego lub mieszanego projektu.
Steven Benitez
62

IntelliJ IDEA:

  • 14 i 15 i 16 EAP

    File > Settings... > Editor > Code Style > Java > Imports> w Generalobszarze dodaj dużą liczbę dla Class count to use import with '*':/Names count to use static import with '*':

    Plik> Ustawienia ...> Edytor> Styl kodu> Java> Importowanie> Ogólne> Liczba klas do użycia podczas importowania z „*”

IntelliJ IDEA:

  • 12 i 13

    File > Settings... > Code Style > Java > Imports> w Generalobszarze dodaj dużą liczbę dlaClass count to use import with '*': Plik> Ustawienia ...> Styl kodu> Java> Importowanie> Ogólne> Liczba klas do użycia podczas importowania z „*”

    PS: Javajest Code Stylena ścieżce.

ROMANIA_inżynier
źródło
5
Czy naprawdę nie ma sposobu, aby powiedzieć Intellijowi 15, aby nigdy nie korzystał z importu oznaczonego gwiazdką? Mam na myśli bez podawania liczby klas?
Stephen Hartley
1
Podejrzewałem to - ale wydaje się dziwne!
Stephen Hartley
To jest orzechowe. I jak import oznaczone gwiazdką. Co znowu jest wadą? Naprawdę. (Nie w jakiejś hipotetycznej sytuacji, w której nakładają się na siebie nazwy.)
MarkHu
3
@MarkHu Gdy ktoś przegląda Twój kod poza zakresem IDE (np. Na Github), bardzo trudno jest ustalić, z którego pakietu pochodzi klasa.
Gili
1

Musisz także usunąć nazwy pakietów z pola listy „Pakiety do importowania z *” tuż pod polami tekstowymi „Liczba klas do użycia z importem ”. Myślę, że są tam domyślnie Swing i AWT. Nadal miałem import javax.swing. ; dodano, mimo że miałem klasę ustawioną na 999. Użyłem przycisku znaku minus, aby usunąć Swinga i Awta z pudełka, a potem zadziałało.

użytkownik3573712
źródło