IntelliJ Idea (the professional version) is the only professional tool on the market for java development. If you’re using eclipse then you’re probably not acting professionally. Feel free to argue with me about this as much as you want – you’re simply wrong, get over it.
Maven is the right choice for a configuration management tool. Gradle is simply wrong, and Ant is completely out of the question. Again, argue if you like, but you’re wrong. I don’t think Maven is great, I think it’s the right design. Gradle is a much better implementation, but is broken by design (like subversion/cvs).
I’ve been using team city for the last year, and it’s quite nice, but so is Hudson/Jenkins. I do like the IntelliJ integration though, and the ability to run the intellij code metrics remotely in team-city. Also, team-city integrates well with svn, git, and jira.
Jira is totally indispensable. Get Bonfire and Structure, subversion and git plugins, and the teamcity plugin.
Git is awesome, but subversion will do at a push (it’s nowhere near as good, of course, but it’s better than nothing).
I have everything in a sun virtualbox vm so I can snapshot and restore my entire environment should I wish. I keep the DB in a separate vm for the same reason.
I have recently been forced to develop on a very powerful Macbook Pro. I hate it with a passion. It’s a toy and has no place in professional software development.