OpenSearch/buildSrc
Jason Tedor 045dd4ad48
Introduce multi-release JAR
This commit introduces the ability for the core Elasticsearch JAR to be
a multi-release JAR containing code that is compiled for JDK 8 and code
that is compiled for JDK 9. At runtime, a JDK 8 JVM will ignore the JDK
9 compiled classfiles, and a JDK 9 JVM will use the JDK 9 compiled
classfiles instead of the JDK 8 compiled classfiles. With this work, we
utilize the new JDK 9 API for obtaining the PID of the running JVM,
instead of relying on a hack.

For now, we want to keep IDEs on JDK 8 so when the build is in an IDE we
ignore the JDK 9 source set (as otherwise the IDE would give compilation
errors). However, with this change, running Gradle from the command-line
now requires JAVA_HOME and JAVA_9_HOME to be set. This will require
follow-up work in our CI infrastructure and our release builds to
accommodate this change.

Relates #28051
2018-01-16 15:10:29 -05:00
..
src Introduce multi-release JAR 2018-01-16 15:10:29 -05:00
.gitignore Build: Add fake project to include buildSrc as normal project 2016-05-06 22:26:15 -07:00
build.gradle upgraded jna from 4.4.0-1 to 4.5.1 (#28183) 2018-01-11 17:31:10 +01:00
version.properties upgrade to lucene 7.2.1 (#28218) 2018-01-15 16:47:46 +01:00