Vi is great if you are editing a line based language.
Eclipse is great if you are editing Java.
For everything else, Emacs.
If you are doing iterative programming, then keep running your JUnit Tests.
So, keep running mvn, make and ant from the Command Line.
If you are doing Functional Programming, then writing code Interactively is the "Cats Ass".
I prefer to write a function and execute it immediately!
No running JUnit Tests iteratively, which means running all the tests.
And yes, some of this is available in Eclipse and IntelliJ, but not as well integrated.