Using the Eclipse compiler API works fine, with two minor caveats:
- the dependency must be upgraded periodically to get support for newer Java versions
- we need to embed ecj (~2.7M)
Since Java 7 the JavaCompiler API allows programmatic access to the system java compiler. We should instead try and use this compiler.