diff --git a/jvm/CHANGELOG.md b/jvm/CHANGELOG.md index b5c16b68..52dfa48a 100644 --- a/jvm/CHANGELOG.md +++ b/jvm/CHANGELOG.md @@ -11,6 +11,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Fixed +- Restore support for JRE 11. (fixes [#528](https://github.com/diffplug/selfie/issues/528)) ## [2.5.2] - 2025-04-28 ### Fixed diff --git a/jvm/gradle.properties b/jvm/gradle.properties index df6730c0..641babd3 100644 --- a/jvm/gradle.properties +++ b/jvm/gradle.properties @@ -10,4 +10,6 @@ ver_OKIO=3.9.0 ver_KOTLIN_TEST=2.0.0 ver_KOTLIN_SERIALIZATION=1.7.3 # Kotest 5.4.0 is the oldest that we support -ver_KOTEST=5.4.0 \ No newline at end of file +ver_KOTEST=5.4.0 + +ver_JVM_TARGET=11 \ No newline at end of file diff --git a/jvm/gradle/jvm-target.gradle b/jvm/gradle/jvm-target.gradle new file mode 100644 index 00000000..970c60cb --- /dev/null +++ b/jvm/gradle/jvm-target.gradle @@ -0,0 +1,29 @@ +if (plugins.hasPlugin('org.jetbrains.kotlin.jvm')) { + kotlin { + compileKotlin { + kotlinOptions { + jvmTarget = "$ver_JVM_TARGET" + } + } + } + tasks.named('compileJava', JavaCompile) { + options.release = Integer.parseInt(ver_JVM_TARGET) + } +} else if (plugins.hasPlugin('org.jetbrains.kotlin.multiplatform')) { + kotlin { + jvm { + compilations.all { + kotlinOptions { + jvmTarget = "$ver_JVM_TARGET" + } + } + } + targets.withType(org.jetbrains.kotlin.gradle.targets.jvm.KotlinJvmTarget) { + compilations.all { + kotlinOptions { + jvmTarget = "$ver_JVM_TARGET" + } + } + } + } +} diff --git a/jvm/selfie-lib/build.gradle b/jvm/selfie-lib/build.gradle index 90cf72b2..8bbf7005 100644 --- a/jvm/selfie-lib/build.gradle +++ b/jvm/selfie-lib/build.gradle @@ -58,4 +58,5 @@ tasks.create('test') { // it all needs to get published and formatted apply from: 干.file('base/maven.gradle') -apply from: 干.file('base/sonatype.gradle') \ No newline at end of file +apply from: 干.file('base/sonatype.gradle') +apply from: rootProject.file('gradle/jvm-target.gradle') diff --git a/jvm/selfie-runner-junit5/build.gradle b/jvm/selfie-runner-junit5/build.gradle index 165cf3ca..87371943 100644 --- a/jvm/selfie-runner-junit5/build.gradle +++ b/jvm/selfie-runner-junit5/build.gradle @@ -35,3 +35,4 @@ test { // it all needs to get published and formatted apply from: 干.file('base/maven.gradle') apply from: 干.file('base/sonatype.gradle') +apply from: rootProject.file('gradle/jvm-target.gradle') diff --git a/jvm/selfie-runner-kotest/build.gradle b/jvm/selfie-runner-kotest/build.gradle index 01da20dd..3dcf4f2d 100644 --- a/jvm/selfie-runner-kotest/build.gradle +++ b/jvm/selfie-runner-kotest/build.gradle @@ -59,3 +59,4 @@ jvmTest { // it all needs to get published and formatted apply from: 干.file('base/maven.gradle') apply from: 干.file('base/sonatype.gradle') +apply from: rootProject.file('gradle/jvm-target.gradle') diff --git a/jvm/undertest-junit5-kotest/harness/gradle/jvm-target.gradle b/jvm/undertest-junit5-kotest/harness/gradle/jvm-target.gradle new file mode 100644 index 00000000..e69de29b