tree 18fbeec9707bf6d7ee64d78a4fc4edf193a8cf9a
parent f719ca4ef354eb19f53f80722836b13b16496b0b
author Ian Zerny <zerny@google.com> 1549889662 +0100
committer Ian Zerny <zerny@google.com> 1549889662 +0100

Add a pinned JDK 9 to third_party and update Gradle to 5.2

This CL makes various changes to update our build to JDK 9 and Gradle 5.2. The
build will by default use third_party/{gradle/gradle, openjdk/openjdk-9.0.4} to
build. This is done by directly using third_party/gradle/gradle and reading the
location of the JDK from tools/jdk.py. That value is then set as JAVA_HOME for
the subprocess in tools/gradle.py and picked up by the running tests via
Syste.getProperty("java.home"). To override the JDK to use, both tools/gradle.py
and tools/test.py take a --java-home argument which is used to define
-Dorg.gradle.java.home which will take precedence over JAVA_HOME in gradle.

FYI, the build.gradle is configured to issue a warning if the current Java Home
differes from the expected pinned version, but will not change it.

The summary of changes needed to update are:

- Add tools/jdk.py which is the canonical place to update the current default JDK.

- Add --java-home flag for running with a non-pinned JDK (eg, JDK 8) to gradle.py.

- Add various max-heap-size settings to control heap size (for example, running
JDK 8 requires manually increasing size of the gradle instance for compilation).

- Update the inner-classes tests which are no longer considered malformed on JDK 9.

- Update path to classes build dir (changed in gradle 4+).

Change-Id: I28789c0eaacb865b31b46e8daec0da8e62bb24a3