From de63ff1653a79ea9afaaf093dd880f77db603484 Mon Sep 17 00:00:00 2001 From: Soby Chacko Date: Thu, 6 Feb 2025 16:06:06 -0500 Subject: [PATCH] GH-3731: Upgrade Gradle and configure Java/Kotlin toolchains Fixes: #3731 * Upgrade Gradle wrapper from 8.9 to 8.12.1 * Configure Java toolchain to use Java 23 * Add Kotlin compiler options for test compilation * Simplify project inclusion in settings.gradle using directory scan Signed-off-by: Soby Chacko --- build.gradle | 13 +++++++++++++ gradle.properties | 1 + gradle/wrapper/gradle-wrapper.properties | 4 ++-- settings.gradle | 9 +++++---- 4 files changed, 21 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index f8280fd3..cbfea32a 100644 --- a/build.gradle +++ b/build.gradle @@ -131,6 +131,9 @@ configure(javaProjects) { subproject -> apply from: "${rootProject.projectDir}/gradle/publish-maven.gradle" java { + toolchain { + languageVersion = JavaLanguageVersion.of(23) + } withJavadocJar() withSourcesJar() registerFeature('optional') { @@ -148,6 +151,16 @@ configure(javaProjects) { subproject -> options.encoding = 'UTF-8' } + compileTestKotlin { + kotlinOptions { + jvmTarget = JavaVersion.VERSION_17 + } + compilerOptions { + allWarningsAsErrors = true + } + } + + eclipse.project.natures += 'org.springframework.ide.eclipse.core.springnature' // dependencies that are common across all java projects diff --git a/gradle.properties b/gradle.properties index 4d42424f..e457f317 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,3 +3,4 @@ org.gradle.jvmargs=-Xmx1536M -Dfile.encoding=UTF-8 org.gradle.caching=true org.gradle.parallel=true kotlin.stdlib.default.dependency=false +#kotlin.jvm.target.validation.mode = IGNORE diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 68e8816d..d7104778 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=d725d707bfabd4dfdc958c624003b3c80accc03f7037b5122c4b1d0ef15cecab -distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip +distributionSha256Sum=8d97a97984f6cbd2b85fe4c60a743440a347544bf18818048e611f5288d46c94 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle b/settings.gradle index a81eefa9..0c1b19be 100644 --- a/settings.gradle +++ b/settings.gradle @@ -11,7 +11,8 @@ plugins { rootProject.name = 'spring-kafka-dist' -include 'spring-kafka' -include 'spring-kafka-bom' -include 'spring-kafka-test' -include 'spring-kafka-docs' +rootDir.eachDir { dir -> + if (dir.name.startsWith('spring-')) { + include ":${dir.name}" + } +}