Skip to content

How can I specify the order of imports in intellij IDEA?

Intellij keeps reordering my imports like so:

import app.v1.myModule.db.model.InternalError;
import app.v1.myModule.db.model.*;

Whereas our maven checkstyle wants the order like so:

import app.v1.myModule.db.model.*;
import app.v1.myModule.db.model.InternalError;

I should also point out, that this doesn’t apply to all the imports, only some of them. I’d like to set it so intellij organises all packages that end with a * to be sorted above fully qualified imports on the same path?

So like this:

import app.v1.myModule.db.model.*;
import app.v1.myModule.db.model.InternalError;
import app.v1.myModule.service.*;
import app.v1.myModule.service.MyService;

For the record, the extra classes are added when the import is ambiguous, so we can’t use the * for those particular classes.

Here is a screenshot of how my settings currently look:
enter image description here

Answer

Try using the following layout for imports with *:

enter image description here