From f95dea43307f587db8ff17e9b689010949fd3fc2 Mon Sep 17 00:00:00 2001 From: Eric Bottard Date: Fri, 5 Dec 2025 18:47:10 +0100 Subject: [PATCH] Use Java 21(+) for main branch Signed-off-by: Eric Bottard --- .../artifactory-milestone-release.yml | 2 +- .github/workflows/continuous-integration.yml | 2 +- .github/workflows/documentation-upload.yml | 2 +- .../workflows/fast-continuous-integration.yml | 14 ++++++------- .github/workflows/main-push-fast.yml | 2 +- .github/workflows/maintenance-fast.yml | 2 +- .github/workflows/pr-check.yml | 2 +- .../workflows/release-notes-generation.yml | 2 +- .sdkmanrc | 3 +++ README.md | 2 +- pom.xml | 21 ++++++++++++------- 11 files changed, 32 insertions(+), 22 deletions(-) create mode 100644 .sdkmanrc diff --git a/.github/workflows/artifactory-milestone-release.yml b/.github/workflows/artifactory-milestone-release.yml index 290d73c0f53..6482b462543 100644 --- a/.github/workflows/artifactory-milestone-release.yml +++ b/.github/workflows/artifactory-milestone-release.yml @@ -18,7 +18,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index ae174fb62f5..ca4792882f2 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -48,7 +48,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' diff --git a/.github/workflows/documentation-upload.yml b/.github/workflows/documentation-upload.yml index 7e67f3e2b80..b07932e9bc3 100644 --- a/.github/workflows/documentation-upload.yml +++ b/.github/workflows/documentation-upload.yml @@ -21,7 +21,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' diff --git a/.github/workflows/fast-continuous-integration.yml b/.github/workflows/fast-continuous-integration.yml index b72fbcedb45..cc9dce0f982 100644 --- a/.github/workflows/fast-continuous-integration.yml +++ b/.github/workflows/fast-continuous-integration.yml @@ -30,7 +30,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' @@ -65,7 +65,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' @@ -102,7 +102,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' @@ -139,7 +139,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' @@ -176,7 +176,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' @@ -219,7 +219,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' @@ -248,7 +248,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' diff --git a/.github/workflows/main-push-fast.yml b/.github/workflows/main-push-fast.yml index a19ecf322ee..15e3bfc9603 100644 --- a/.github/workflows/main-push-fast.yml +++ b/.github/workflows/main-push-fast.yml @@ -53,7 +53,7 @@ jobs: - uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' # cache: 'maven' # Disabled for fast workflow - reduces post-job noise diff --git a/.github/workflows/maintenance-fast.yml b/.github/workflows/maintenance-fast.yml index 1a903df2144..4e3d0541d9b 100644 --- a/.github/workflows/maintenance-fast.yml +++ b/.github/workflows/maintenance-fast.yml @@ -20,7 +20,7 @@ jobs: - uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index 23a52bb0902..3dd1f76b1db 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -17,7 +17,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' cache: 'maven' diff --git a/.github/workflows/release-notes-generation.yml b/.github/workflows/release-notes-generation.yml index 5b53cc8b0b4..a6ebe546504 100644 --- a/.github/workflows/release-notes-generation.yml +++ b/.github/workflows/release-notes-generation.yml @@ -26,7 +26,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - java-version: '25' + java-version: '21' distribution: 'temurin' - name: Prepare configuration file diff --git a/.sdkmanrc b/.sdkmanrc new file mode 100644 index 00000000000..5a6900dd570 --- /dev/null +++ b/.sdkmanrc @@ -0,0 +1,3 @@ +# Enable auto-env through the sdkman_auto_env config +# Add key=value pairs of SDKs to use below +java=21.0.9-tem diff --git a/README.md b/README.md index 242a8f2c122..a8a0a11785d 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ To clone it you have to either: ## Building -The project targets and build artifacts compatible with Java 17+, but requires a JDK 25+ +The project targets and build artifacts compatible with Java 17+, but requires JDK 21 to build. This is enforced by the maven enforcer plugin. To build with running unit tests diff --git a/pom.xml b/pom.xml index 1a1b458db13..cb029fd1296 100644 --- a/pom.xml +++ b/pom.xml @@ -274,7 +274,6 @@ ${java.version} ${java.version} ${java.version} - 2.2.21 4.0.0 @@ -340,7 +339,7 @@ 4.12.0 5.5.6 4.1.0 - + 0.18.0-SNAPSHOT 0.9.0-SNAPSHOT @@ -351,7 +350,7 @@ 3.6.2 - [25,) + [21.0.8,) 3.1.2 3.5.2 3.5.0 @@ -422,10 +421,12 @@ org.jetbrains.kotlin kotlin-maven-plugin - ${kotlin.compiler.version} + ${kotlin.version} ${java.version} true + 2.2 + 2.2 @@ -462,9 +463,6 @@ ${java.version} -parameters - -XDcompilePolicy=simple - --should-stop=ifError=FLOW - -Xplugin:ErrorProne -XepDisableAllChecks -Xep:NullAway:ERROR -XepOpt:NullAway:OnlyNullMarked -XepOpt:NullAway:JSpecifyMode=true @@ -496,6 +494,15 @@ compile + + + -XDcompilePolicy=simple + + -XDaddTypeAnnotationsToSymbol=true + --should-stop=ifError=FLOW + -Xplugin:ErrorProne -XepDisableAllChecks -Xep:NullAway:ERROR -XepOpt:NullAway:OnlyNullMarked -XepOpt:NullAway:JSpecifyMode=true + + java-test-compile