Browse Source

Require JDK 13 for compilation (#50004)

We have a long history of advancing the required compiler to the newest
JDK. JDK 13 has been with us for awhile, but we were blocked from
upgrading since Gradle was not compatible with JDK 13. With the
advancement in our project to Gradle 6 which supports JDK 13, we can now
advance our minimum compiler version. This commit updates the minimum
compiler version to JDK 13.
Jason Tedor 5 years ago
parent
commit
e4b9044593

+ 1 - 1
.ci/build.sh

@@ -1,6 +1,6 @@
 #!/bin/bash
 
-JAVA_HOME=${JAVA_HOME:-$HOME/.java/openjdk12}
+JAVA_HOME=${JAVA_HOME:-$HOME/.java/openjdk13}
 RUNTIME_JAVA_HOME=${RUNTIME_JAVA_HOME:-$HOME/.java/openjdk11}
 
 JAVA7_HOME=$HOME/.java/java7

+ 1 - 1
.ci/java-versions.properties

@@ -4,7 +4,7 @@
 # build and test Elasticsearch for this branch. Valid Java versions
 # are 'java' or 'openjdk' followed by the major release number.
 
-ES_BUILD_JAVA=openjdk12
+ES_BUILD_JAVA=openjdk13
 ES_RUNTIME_JAVA=openjdk11
 GRADLE_TASK=build
 

+ 1 - 1
.ci/matrix-build-javas.yml

@@ -6,4 +6,4 @@
 # or 'openjdk' followed by the major release number.
 
 ES_BUILD_JAVA:
-  - openjdk12
+  - openjdk13

+ 0 - 3
.ci/matrix-runtime-javas.yml

@@ -7,11 +7,8 @@
 
 ES_RUNTIME_JAVA:
   - java11
-  - java12
-  - openjdk12
   - openjdk13
   - openjdk14
   - zulu11
-  - zulu12
   - corretto11
   - adoptopenjdk11

+ 1 - 0
.ci/packer_cache.sh

@@ -21,5 +21,6 @@ export JAVA_HOME="${HOME}"/.java/${ES_BUILD_JAVA}
 export JAVA8_HOME="${HOME}"/.java/java8
 export JAVA11_HOME="${HOME}"/.java/java11
 export JAVA12_HOME="${HOME}"/.java/openjdk12
+export JAVA13_HOME="${HOME}"/.java/openjdk13
 ./gradlew --parallel clean --scan -Porg.elasticsearch.acceptScanTOS=true -s resolveAllDependencies
 

+ 4 - 4
CONTRIBUTING.md

@@ -92,16 +92,16 @@ Contributing to the Elasticsearch codebase
 
 **Repository:** [https://github.com/elastic/elasticsearch](https://github.com/elastic/elasticsearch)
 
-JDK 12 is required to build Elasticsearch. You must have a JDK 12 installation
+JDK 13 is required to build Elasticsearch. You must have a JDK 13 installation
 with the environment variable `JAVA_HOME` referencing the path to Java home for
-your JDK 12 installation. By default, tests use the same runtime as `JAVA_HOME`.
+your JDK 13 installation. By default, tests use the same runtime as `JAVA_HOME`.
 However, since Elasticsearch supports JDK 11, the build supports compiling with
-JDK 12 and testing on a JDK 11 runtime; to do this, set `RUNTIME_JAVA_HOME`
+JDK 13 and testing on a JDK 11 runtime; to do this, set `RUNTIME_JAVA_HOME`
 pointing to the Java home of a JDK 11 installation. Note that this mechanism can
 be used to test against other JDKs as well, this is not only limited to JDK 11.
 
 > Note: It is also required to have `JAVA8_HOME`, `JAVA9_HOME`, `JAVA10_HOME`
-and `JAVA11_HOME` available so that the tests can pass.
+and `JAVA11_HOME`, and `JAVA12_HOME` available so that the tests can pass.
 
 > Warning: do not use `sdkman` for Java installations which do not have proper
 `jrunscript` for jdk distributions.

+ 1 - 1
buildSrc/src/main/groovy/org/elasticsearch/gradle/test/DistroTestPlugin.java

@@ -75,7 +75,7 @@ public class DistroTestPlugin implements Plugin<Project> {
 
     private static final String SYSTEM_JDK_VERSION = "11.0.2+9";
     private static final String SYSTEM_JDK_VENDOR = "openjdk";
-    private static final String GRADLE_JDK_VERSION = "12.0.1+12@69cfe15208a647278a19ef0990eea691";
+    private static final String GRADLE_JDK_VERSION = "13.0.1+9@cec27d702aa74d5a8630c65ae61e4305";
     private static final String GRADLE_JDK_VENDOR = "openjdk";
 
     // all distributions used by distro tests. this is temporary until tests are per distribution

+ 1 - 1
buildSrc/src/main/resources/minimumCompilerVersion

@@ -1 +1 @@
-12
+13