IntelliJ: Nigdy nie używaj importowania symboli wieloznacznych

624

Czy istnieje sposób, aby powiedzieć IntelliJ, aby nigdy nie korzystał z importu symboli zastępczych? W „Ustawienia> Styl kodu> Importowanie” widzę, że możesz określić „liczbę klas” przed IntelliJ przy użyciu importowania symboli zastępczych. Jeśli jednak nigdy nie chcę używać importowania symboli zastępczych, czy mogę wyłączyć tę funkcję?

Próbowałem wstawić -1 lub pozostawić pole puste, ale to tylko mówi IntelliJowi, aby zawsze używał importowania symboli zastępczych. Oczywiście niezbyt miłym rozwiązaniem byłoby umieszczenie absurdalnie wysokiej liczby, aby nigdy nie napotkać importowania symboli zastępczych, ale miałem nadzieję, że istnieje lepszy sposób, aby to wyłączyć.

digiarnie
źródło

Odpowiedzi:

843

Oczywiste jest, dlaczego chcesz to wyłączyć: Aby zmusić IntelliJ do uwzględnienia każdego importu osobno. Ułatwia to ludziom dokładne określenie, skąd pochodzą używane klasy.

Kliknij ikonę „Klucz” Ustawienia na pasku narzędzi, otwórz „Importowanie” w „Stylu kodu” i zaznacz opcję „Użyj importu pojedynczej klasy”. Możesz także całkowicie usunąć wpisy w „Pakietach, z *którymi chcesz importować ” lub określić wartość progową, która używa „ *” tylko wtedy, gdy poszczególne klasy z pakietu przekroczą ten próg.

Aktualizacja: w IDEA 13 „Użyj importu pojedynczej klasy” nie zapobiega importowi symboli wieloznacznych. Rozwiązaniem jest, aby przejść do Preferences( + ,na MacOS / Ctrl+ Alt+ Sw systemie Windows i Linux) > Editor > Code Style > Java > Imports tabzestaw Class count to use import with '*'i Names count to use static import with '*'na wyższą wartość. Każda wartość powyżej 99 wydaje się działać dobrze.

duffymo
źródło
43
Na wypadek, gdyby to pomogło komuś pomieszać: w moim entuzjazmie, że nigdy nie załamuję się importu, umieściłem nieuzasadniony długi ciąg 9 w polu „liczenia klas do użycia ...”, co spowodowało, że IntelliJ 12 po cichu zignorował wartość. „9999” działa dobrze.
PotataChipz
16
Czy naprawdę nie ma sposobu, aby powiedzieć Intellijowi 15, aby nigdy nie używał importu symboli zastępczych? Mam na myśli bez podawania liczby klas?
Stephen Hartley
2
Dlaczego dodanie liczby klas jest tak uciążliwe? Dlaczego nie poprosić JetBrains o ulepszenie, jeśli jest to tak odrażające?
duffymo
30
Wygląda na to, że trzy dziewiątki powinny wystarczyć. Jeśli potrzebujesz więcej niż tysiąc importów, powiedziałbym, że twoja klasa powinna zostać zrefaktoryzowana.
duffymo
23
Nie mogę uwierzyć, że programy zaprogramowały program dla programistów w taki sposób. To mylące okno dialogowe nie zostało jeszcze naprawione w 2016 r.3, czy jest w nim jakiś błąd, czy gdzieś możemy głosować?
Glenn Bech
322
  1. Plik \ Ustawienia ... ( Ctrl+ Alt+ S)
  2. Ustawienia projektu> Edytor> Styl kodu> Java> karta Importy
  3. Ustaw Licznik klas, aby używał importu z „*” na 999
  4. Ustaw Liczba nazw, aby używać importu statycznego z „*” na 999

Następnie twoja konfiguracja powinna wyglądać następująco: wprowadź opis zdjęcia tutaj

(Na IntelliJ IDEA 13.x, 14.x, 15.x, 2016.x, 2017.x)

Do Nhu Vy
źródło
39

Jak dum-dum nie mogłem zrozumieć, dlaczego żadna z tych odpowiedzi nie działała dla moich plików Kotlin java.util.*, więc jeśli tak się dzieje, to:

Preferences
> Editor
> Code Style
> **Kotlin**
> Imports
> Packages to Use Import with '*'
-> Remove 'java.util.*'
Matt Klein
źródło
12
Nie jesteś jedynym dum-dumem na rynku .. / :( :)
Marco
38

wprowadź opis zdjęcia tutaj

IntelliJ IDEA 2018.1.4 (Ultimate Edition) zbudowany 16 maja 2018 r

Kanke
źródło
2
niech żyje ciemny motyw.
mierzący czas
28

Powyższe rozwiązanie nie działało dla mnie. Musiałem ustawić „licznik klas, aby użyć importu z„ * ”na wysoką wartość, np. 999.

Amio.io
źródło
6

Jeśli żadna z powyższych opcji nie działa dla Ciebie, warto sprawdzić, czy masz jakieś pakiety w Preferencje> Edytor> Styl kodu> Java> Import> Pakiety do użycia Importuj z „*”

Heungwoo
źródło
5

Dotyczy to „IntelliJ IDEA-2019.2.4” na Macu.

  1. Przejdź do „IntelliJ IDEA-> Preferencje-> Edytor-> Styl kodu-> Kotlin”.
  2. W sekcji „Pakiety do użycia zaimportuj z” na ekranie pojawi się lista „import java.util.

Przed

  1. Kliknij dowolne miejsce w tym polu i wyczyść ten wpis.
  2. Kliknij Zastosuj i OK.

Po

Neeraj Jain
źródło
2

Skrót robiąc to na Macu: Naciśnij klawisze + Shift + A (akcja) i wpisz „licznik klas, aby użyć importu z *” Naciśnij Enter. Wpisz tam wyższą liczbę, np. 999

użytkownik2789973
źródło
0

Jeśli nie chcesz zmieniać preferencji, możesz zoptymalizować import, naciskając Ctrl + Opcja + o na Macu lub Ctrl + Alt + o na Windows / Linux, a to zastąpi wszystkie importy pojedynczym importem w bieżącym pliku.

Alex Green
źródło
3
IntelliJ domyślnie uważa zwijanie importu za pomocą *.
Mateusz
1
Nie zgadzam się z „nie chcesz zmieniać preferencji”, ale skrót klawiaturowy działał dla mnie!
Grizz,