Skip to content

Commit 1749661

Browse files
committed
Upgrade to Kotlin 2.1
1 parent 0fc21de commit 1749661

File tree

4 files changed

+17
-16
lines changed

4 files changed

+17
-16
lines changed

buildSrc/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ dependencies {
2222
checkstyle("io.spring.javaformat:spring-javaformat-checkstyle:${javaFormatVersion}")
2323

2424
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}")
25-
implementation("org.jetbrains.kotlin:kotlin-compiler-embeddable:${kotlinVersion}")
2625
implementation("io.spring.javaformat:spring-javaformat-gradle-plugin:${javaFormatVersion}")
2726
implementation "com.tngtech.archunit:archunit:1.4.0"
2827
}

buildSrc/src/main/java/org/springframework/graphql/build/conventions/KotlinConventions.java

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,9 @@
1616

1717
package org.springframework.graphql.build.conventions;
1818

19-
import java.util.ArrayList;
20-
import java.util.List;
21-
2219
import org.gradle.api.Project;
23-
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions;
20+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget;
21+
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion;
2422
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile;
2523

2624
/**
@@ -35,15 +33,19 @@ public void apply(Project project) {
3533
}
3634

3735
private void configure(KotlinCompile compile) {
38-
KotlinJvmOptions kotlinOptions = compile.getKotlinOptions();
39-
kotlinOptions.setApiVersion("1.7");
40-
kotlinOptions.setLanguageVersion("1.7");
41-
kotlinOptions.setJvmTarget("17");
42-
kotlinOptions.setJavaParameters(true);
43-
kotlinOptions.setAllWarningsAsErrors(true);
44-
List<String> freeCompilerArgs = new ArrayList<>(compile.getKotlinOptions().getFreeCompilerArgs());
45-
freeCompilerArgs.addAll(List.of("-Xsuppress-version-warnings", "-Xjsr305=strict", "-opt-in=kotlin.RequiresOptIn"));
46-
compile.getKotlinOptions().setFreeCompilerArgs(freeCompilerArgs);
36+
compile.compilerOptions(options -> {
37+
options.getApiVersion().set(KotlinVersion.KOTLIN_2_1);
38+
options.getLanguageVersion().set(KotlinVersion.KOTLIN_2_1);
39+
options.getJvmTarget().set(JvmTarget.JVM_17);
40+
options.getJavaParameters().set(true);
41+
options.getAllWarningsAsErrors().set(true);
42+
options.getFreeCompilerArgs().addAll(
43+
"-Xsuppress-version-warnings",
44+
"-Xjsr305=strict", // For dependencies using JSR 305
45+
"-opt-in=kotlin.RequiresOptIn",
46+
"-Xjdk-release=17" // Needed due to https://youtrack.jetbrains.com/issue/KT-49746
47+
);
48+
});
4749
}
4850

4951
}

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@ org.gradle.daemon=true
55
org.gradle.parallel=true
66
org.gradle.jvmargs=-Dfile.encoding=UTF-8
77

8-
kotlinVersion=1.9.25
8+
kotlinVersion=2.1.20
99

1010
kotlin.stdlib.default.dependency=false

platform/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ dependencies {
1717
api(platform("com.querydsl:querydsl-bom:5.1.0"))
1818
api(platform("io.rsocket:rsocket-bom:1.1.5"))
1919
api(platform("org.jetbrains.kotlin:kotlin-bom:${kotlinVersion}"))
20-
api(platform("org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.8.1"))
20+
api(platform("org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.10.1"))
2121
api(platform("org.junit:junit-bom:5.12.2"))
2222
api(platform("org.mockito:mockito-bom:5.16.0"))
2323
api(platform("org.testcontainers:testcontainers-bom:1.20.6"))

0 commit comments

Comments
 (0)