I use Eclipse for my day job, working on a enterprise java project.
Here are some things I got used to working with Eclipse,
1. Most of the coding are done to interfaces and concrete classes are wired using factories or using spring dependency injection like,
InterfaceName obj=ObjFactory.getImpl(args)
I have to look at Class hierarchy often to go to the method that is being invoked, this is very easy in Eclipse (C+T)
2. Code completion for all methods (methods in different source files and from jars).
3. Highlight errors while editing.
4. Tracing call hierarchy
I tried Emacs some time back for shell scripting on a remote machine and I found that to be very useful and a right fit.
I would love to use Emacs for my java development if there are tools out there which can help me do things that I do with Eclipse. I already feel sluggish with Eclipse some times moving the mouse ;-)
If you predominantly code in Java, you are better off working in Eclipse, and using some plugin for whatever happens to be your favorite editor.
I used to do a lot of Java in the past, and I have used eclipse and vim. Java in plain Vim is a huge PITA - auto complete, generating dummy getter setter, refactoring, fixing imports, checking errors without leaving the ide etc etc. I haphazardly fixed a couple of them using vim plugins and custom keybindings; and then I found eclim, which uses eclipse as a server and provides the functionality in Vim.
Yeah, I've used Emacs for Java in the past and the support is not good even if you use JDEE (which is outdated and slow anyhow). I'm an Emacs fanatic, but even so think you would be better off with an IDE in nontrivial Java programs.
I solved the problem by not using Java, but this is obviously not an easy option for you :). Emacs does support Scala fairly well (from what I've heard) with Ensime, for it's worth.
1. Most of the coding are done to interfaces and concrete classes are wired using factories or using spring dependency injection like,
InterfaceName obj=ObjFactory.getImpl(args)
I have to look at Class hierarchy often to go to the method that is being invoked, this is very easy in Eclipse (C+T)
2. Code completion for all methods (methods in different source files and from jars).
3. Highlight errors while editing.
4. Tracing call hierarchy
I tried Emacs some time back for shell scripting on a remote machine and I found that to be very useful and a right fit.
I would love to use Emacs for my java development if there are tools out there which can help me do things that I do with Eclipse. I already feel sluggish with Eclipse some times moving the mouse ;-)