-vmswitch to define which JDK it should use and make sure the
tools.jarin the Eclipse Ant classpath matches that same JDK. It's absolutely retarded that Eclipse allows them to be different. It caused me all kinds of 'class version mismatch' headaches. Why they thought it was a good idea to build projects and run Ant scripts in the same virtual machine that they run the GUI in is beyond me. IntelliJ IDEA has a much cleaner separation where they run their GUI in their own instance of the JVM (which they control tightly), and they allow you, the user, to specify what JDKs you have installed and which one to use on any given 'module' (Eclipse calls this a 'project') and which to use when running an Ant script. The beauty is its so flexible in IDEA that you can specify different JDKs for different modules and Ant scripts in the same IDEA project (a.k.a. Eclipse 'workspace'). I miss my IDEA.