How do I stop wildcard Java package imports in IntelliJ
Asked Answered
L

6

68

On IntelliJ Java IDE when I import a class using the keyboard shortcut or take the suggested import, IntelliJ imports the whole package, e.g.

public static void main(String[] args) {

  List list = new LinkedList();

} 

would result in this import line

java.util.*;

I prefer the IDE to not do a package level import and import explicit classes. I want to set this at the global level, so I don't have to deal with this at each project. Is there any way to do this?

I am on IntelliJ 13.0.2 on Mac OS X 10.8.5

Thanks

Lac answered 6/10, 2014 at 22:42 Comment(0)
L
72

Open up preferences and search for "import". This will narrow down the list you need to look through. The screen shot shows the options for when to use single imports vs * (you can see I don't like star imports).

enter image description here

Loiretcher answered 6/10, 2014 at 23:4 Comment(3)
Thanks you, this worked, in the past I tried this but the settings didn't stick when I created a new project. I will create a few new projects and see how the setting stays across projects.Lac
NOTE: Also make sure to set "Class count to use import with *" to a high number as shown in the screenshot by Tracy Snell. Also see this #3349316Lac
Is there really no way to tell Intellij 15 never to use starred imports? I mean without specifying a class count??!Rhoden
G
28

under File menu

select Settings (ctrl+alt+s)

select Code Style

select Java

select Imports tab

under General the check box Use single class import will determine whether packages or classes will be imported.

the Use fully qualified class names check box will not use imports rather it will insert full class names directly into the code.

Grievance answered 7/10, 2014 at 0:20 Comment(2)
Thanks for your answer, very detailed and steps clearly listed.Lac
Useful to know, but not actually what was asked. The OP wants to keep import statements, just none with *s.Walloon
A
13

IntelliJ version 2020.2.3 (October built)

Preferences > Editor > CodeStyle > Java in the "General" tab check "Use Single Class import" check "Use fully qualified class names"

enter image description here

Ambary answered 29/1, 2021 at 5:30 Comment(0)
I
2

If you want to see all the specific imports without using fully qualified class names, you can do this:

go to Settings -> Code Style -> Java -> Set "class count to use import with '*': " to 100 (or any big number)

Illusionist answered 31/7, 2023 at 8:40 Comment(0)
S
0

Please check if you have autoimport cancel autoimport auto-import settings under "Settings → Editor → Auto Import

Sennacherib answered 15/8, 2016 at 11:46 Comment(0)
N
-1

I had the same issue. But the following process fixed my problem.

Press key combination ctrl+alt+O, then only the needed packages will be added.

Nuncio answered 2/3, 2016 at 4:45 Comment(1)
Rao, won't key combination ctrl+alt+o fix remove unnecessary packages?Nuncio

© 2022 - 2024 — McMap. All rights reserved.