@@ -72,11 +72,11 @@ jobs:
7272 ref : ${{ inputs.source_ref }}
7373 fetch-depth : 0
7474
75- - name : Set up Java 11
75+ - name : Set up Java 8
7676 uses : actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
7777 with :
7878 distribution : temurin
79- java-version : " 11 "
79+ java-version : " 8 "
8080 cache : maven
8181
8282 - name : Resolve versions and guard against re-release
@@ -168,11 +168,11 @@ jobs:
168168 ref : ${{ needs.resolve.outputs.source_sha }}
169169 submodules : true
170170
171- - name : Set up Java 11
171+ - name : Set up Java 8
172172 uses : actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
173173 with :
174174 distribution : temurin
175- java-version : " 11 "
175+ java-version : " 8 "
176176
177177 - name : Install toolchains
178178 run : |
@@ -256,13 +256,15 @@ jobs:
256256 tar -zxf cmake-3.29.2-linux-x86_64.tar.gz
257257 echo "PATH=$(pwd)/cmake-3.29.2-linux-x86_64/bin/:$PATH" >> "$GITHUB_ENV"
258258
259- - name : Install GraalVM JDK 25
259+ - name : Install Temurin JDK 8
260260 run : |
261- # TODO(pin): replace /25/latest/ with an exact GraalVM build URL and verify a sha256.
262- wget -nv -O graalvm.tar.gz https://download.oracle.com/graalvm/25/latest/graalvm-jdk-25_linux-x64_bin.tar.gz
263- mkdir graalvm
264- tar xfz graalvm.tar.gz -C graalvm --strip-components=1
265- echo "JAVA_HOME=$(pwd)/graalvm" >> "$GITHUB_ENV"
261+ # Build the native lib against the Java 8 JNI headers -- JDK 8 is the artifact's
262+ # floor. The Adoptium "latest GA" redirect tracks the newest 8u release.
263+ # TODO(pin): pin to an exact Temurin 8u build URL and verify a sha256.
264+ wget -nv -O jdk8.tar.gz https://api.adoptium.net/v3/binary/latest/8/ga/linux/x64/jdk/hotspot/normal/eclipse
265+ mkdir jdk8
266+ tar xfz jdk8.tar.gz -C jdk8 --strip-components=1
267+ echo "JAVA_HOME=$(pwd)/jdk8" >> "$GITHUB_ENV"
266268
267269 - name : Build native library
268270 run : |
@@ -320,13 +322,15 @@ jobs:
320322 yum update -y
321323 yum install wget nasm zstd -y
322324
323- - name : Install GraalVM JDK 25
325+ - name : Install Temurin JDK 8
324326 run : |
325- # TODO(pin): replace /25/latest/ with an exact GraalVM build URL and verify a sha256.
326- wget -v --timeout=180 -O graalvm.tar.gz https://download.oracle.com/graalvm/25/latest/graalvm-jdk-25_linux-aarch64_bin.tar.gz
327- mkdir graalvm
328- tar xfz graalvm.tar.gz -C graalvm --strip-components=1
329- echo "JAVA_HOME=$(pwd)/graalvm" >> "$GITHUB_ENV"
327+ # Build the native lib against the Java 8 JNI headers -- JDK 8 is the artifact's
328+ # floor. The Adoptium "latest GA" redirect tracks the newest 8u release.
329+ # TODO(pin): pin to an exact Temurin 8u build URL and verify a sha256.
330+ wget -v --timeout=180 -O jdk8.tar.gz https://api.adoptium.net/v3/binary/latest/8/ga/linux/aarch64/jdk/hotspot/normal/eclipse
331+ mkdir jdk8
332+ tar xfz jdk8.tar.gz -C jdk8 --strip-components=1
333+ echo "JAVA_HOME=$(pwd)/jdk8" >> "$GITHUB_ENV"
330334
331335 - name : Build native library
332336 run : |
@@ -382,19 +386,21 @@ jobs:
382386 sudo apt-get update -y
383387 sudo apt-get install -y nasm gcc-mingw-w64 g++-mingw-w64
384388
385- - name : Install GraalVM JDK 25
389+ - name : Install Temurin JDK 8
386390 run : |
387- # TODO(pin): replace /25/latest/ with an exact GraalVM build URL and verify a sha256.
388- wget -nv -O graalvm.tar.gz https://download.oracle.com/graalvm/25/latest/graalvm-jdk-25_linux-x64_bin.tar.gz
389- mkdir graalvm
390- tar xfz graalvm.tar.gz -C graalvm --strip-components=1
391- echo "JAVA_HOME=$(pwd)/graalvm" >> "$GITHUB_ENV"
391+ # Host JDK only supplies the shared JNI header (jni.h); the Windows-specific
392+ # jni_md.h is fetched below. JDK 8 is the artifact's floor.
393+ # TODO(pin): pin to an exact Temurin 8u build URL and verify a sha256.
394+ wget -nv -O jdk8.tar.gz https://api.adoptium.net/v3/binary/latest/8/ga/linux/x64/jdk/hotspot/normal/eclipse
395+ mkdir jdk8
396+ tar xfz jdk8.tar.gz -C jdk8 --strip-components=1
397+ echo "JAVA_HOME=$(pwd)/jdk8" >> "$GITHUB_ENV"
392398
393- - name : Download Windows jni_md.h from JDK 25
399+ - name : Download Windows jni_md.h from JDK 8
394400 run : |
395401 cd core
396- # TODO(pin): pin to a jdk25u tag/commit instead of the moving `master` branch.
397- curl -fsSL https://raw.githubusercontent.com/openjdk/jdk25u /master/src/java.base/ windows/native/include /jni_md.h > "$JAVA_HOME/include/jni_md.h"
402+ # TODO(pin): pin to a jdk8u tag/commit instead of the moving `master` branch.
403+ curl -fsSL https://raw.githubusercontent.com/openjdk/jdk8u /master/jdk/ src/windows/javavm/export /jni_md.h > "$JAVA_HOME/include/jni_md.h"
398404
399405 - name : Build native library
400406 run : |
@@ -443,11 +449,11 @@ jobs:
443449 with :
444450 ref : ${{ needs.resolve.outputs.source_sha }}
445451
446- - name : Set up Java 11
452+ - name : Set up Java 8
447453 uses : actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
448454 with :
449455 distribution : temurin
450- java-version : " 11 "
456+ java-version : " 8 "
451457 cache : maven
452458
453459 - name : Download native artifacts
@@ -537,11 +543,11 @@ jobs:
537543 exit 1
538544 fi
539545
540- - name : Set up Java 11
546+ - name : Set up Java 8
541547 uses : actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
542548 with :
543549 distribution : temurin
544- java-version : " 11 "
550+ java-version : " 8 "
545551 cache : maven
546552
547553 - name : Download native artifacts
@@ -741,11 +747,11 @@ jobs:
741747 ref : ${{ inputs.source_ref }}
742748 fetch-depth : 0
743749
744- - name : Set up Java 11
750+ - name : Set up Java 8
745751 uses : actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
746752 with :
747753 distribution : temurin
748- java-version : " 11 "
754+ java-version : " 8 "
749755 cache : maven
750756
751757 - name : Open next-development-version bump PR
0 commit comments