Beth mentioned Eclipse, and I commented there that I was loving that system. I wanted to here that mention that Eclipse rocks my world. It is a JAVA development environment, 100% free for download and use, that gets it right. I have code that has to become shared libraries and code that is my own and ant build scripts and extra JARs that all relate together, and I have it all working like a dream.
Finally I can step through my shared libraries again like I couldn't in JBuilder 7, and Eclipse understands that sometimes sources live far away from their libraries. It understands the dependencies between projects, integrates with javadoc beautifully, and all options to set up what needs to be set up are where I expect them to be.
It has refactoring tools built in, not as 3d party for-pay extensions. While very basic, they are aslo straightforward and understandable, and allowed me to very quickly extract the commonality between classes.
I am addicted to CTRL+M for automatic inclusion of imports of classes you just type in the body of the code, and if the system can't resolve the import, it asks you explicitly. It reformats code when asked, sorts class members after a template you can set, does inline parse warnings, but without being stupid, and generally feels rock solid.
I am about to dump JBuilder off my system.