scala-ide/scala-ide — pull request #697 by dragos (2014-05-21 12:20:22+00:00)
Title: Build support for several versions of Scala

This supersedes #695.

The purpose of this PR is to hook together the Scala builder to the rest of the plugin work around the `-Xsource:2.10` flag:

* projects in *compatibility mode* that have `-Xsource:2.10` and a 2.10 classpath (including the Scala library) will be built using the 2.10 build compiler (packaged in an additional bundle, with the plugin -- work by @skyluc in #693)
* classloaders are cached per ScalaPlugin instance. The current classloader is re-used in case the installation happens to be the platform (the one running inside Scala IDE). This saves memory and JIT-compilation times (a fresh classloader is "cold", and code needs to be jit-compiled again).

Right now it's cumbersome for users to switch between the two modes. Future work should expose the concept of a Scala installation (much like the JDK/JRE installations for Java) with a clean UI, and allow setting it manually, per project. Furthermore, it should allow to define as many installations as one desires by pointing to a folder or a local maven repository.