I know I'll make some people not happy by saying this but the only reason you need so much complex IDE tooling with Java compared to other languages is because the language itself & the tools associated to it are not very well designed. Just about everything requires some insane boilerplate where it should not.
It's not a solution to a problem, it's a problem searching for a solution.