# Java compilers in Bazel

Bazel compiles Java code using a custom builder. This builder is called
JavaBuilder and its code lies in //src/java_tools/buildjar. To build Java
code, JavaBuilder use the Java compiler from the JDK. To support
[ErrorProne](http://errorprone.info) checks, we vendor a custom build
of the Java compiler code. This is the raw version of the Java compiler
from [OpenJDK](https://openjdk.java.net) but compiled for a lower
version of the JRE. Those builds are vendored in
//third_party/java/jdk/langtools.

Current Bazel supports running on a JRE 8 only because the default Java
compiler used (//third_party/java/jdk/langtools/javac.jar) is the
Java compiler of OpenJDK 9 compiled to run on a JRE 8. This cannot
be built to run on a JRE 7 because of code incompatiblity. Bazel's
JavaBuilder at HEAD cannot be linked with earlier version of the
Java compiler (it depends on some internals of the Java compiler).

To build a version of Bazel that can run on a JRE 7, we need to rely
on the version of JavaBuilder provided with Bazel 0.1.0
(//third_party/java/jdk/javabuilder/JavaBuilder_0.1.0_deploy.jar) which works
with a Java compiler of OpenJDK 8 compiled to run on a JRE 7
(//third_party/java/jdk/langtools/javac7.jar).
