You will likely have different opinions from different people.
I have been using Ubuntu 10.04 LTS 32 bit.
You could say that I'm a bit 'conservative' :-)
More or less: I try to opt for using stuff that's been around for the longest and in widest use... so it has probably been tested better... just by many people using it.
Nowadays Ubuntu by default uses open-jdk....
That is the one thing that I advise you *change* from the default setup. I.e install 32 bit Sun JVM instead of the open-jdk. You will likely have less problems and generally a better developing experience (for example 'hotswap' in the Eclipse debugger doesn't work so well or at all with open-jdk).
I have myself been using this kind of setup for quite a while and found it overall quite reliable.
You might have other people suggest to go with more recent version of Ubuntu or other distros, and go for 64 bit setups.
But I'd suggest that you don't.
Newer versions of Ubuntu are using 'Unity' instead of good old 'Gnome 2'. And maybe one day it will be very good, but right now I'd say it probably still has some stuff that doesn't work so well. Plus, to me it seems like a UI that is more designed to work well on an iPad and isn't as well-suited to work well with a multi-monitor development setup.
64 bit *may* give you a performance boost... but actually that's not necessarily the case if you are using Java. 32 bit VM tends to use less memory which in itself will help performance. There's a hard memory limit on 32 bit of 4Gb per process, but with the PAE kernel which is now standard in 10.04, you don't have an overall 4Gb limit. So you can run several processes / JVMs and use all your memory.
I find for me, the 4Gb per process limit is never a problem. If you think you might need to run a single very large server process on your development machine... you may need to go with 64 bit however.
Technically you can also run a 32 VM on a 64 bit OS, but this somewhat 'custom' setup is likely to take more work for you to setup and figure out what's wrong when something isn't working with the custom setup. I.e. you are more likely to hit bugs that are specific to this 'cross 32-64 bit setup.
My setup works well with STS for me...
One thing I'd advise you w.r.t to Eclipse installs (apart from STS) is not to install them from the Ubuntu repository but get them 'directly from the source' at eclipse.org. The Ubuntu repository contains repackaged older-versions that don't always work the same. This can give you problems.
Hope this helps. But like I said, other people may give you different advice. Ultimately, you may have to try a few things for a bit to find what works best for what kind of things you are trying to do and your tastes and your appetite for 'Unix problem solving adventures').
I prefer if things 'just work' and for the most part I find the Ubuntu setup I described above does that. Though of course there is the odd glitch now and then :-)
Last edited by Kris De Volder; Jan 26th, 2012 at 07:37 PM.
Reason: fix some spelling and clarify wording
Kris De Volder -- SpringSource