@@ -5,14 +5,12 @@ import com.github.spotbugs.snom.SpotBugsExtension
55import com.github.spotbugs.snom.SpotBugsTask
66import org.gradle.api.tasks.testing.logging.TestExceptionFormat
77import org.gradle.api.tasks.testing.logging.TestLogEvent
8- import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension
98
109logger.quiet(" Java version: ${JavaVersion .current()} " )
1110logger.quiet(" Gradle version: ${gradle.gradleVersion} " )
1211
1312plugins {
1413 id(" java-library" )
15- kotlin(" jvm" ) version libs.versions.kotlin
1614 alias(libs.plugins.spotless)
1715 alias(libs.plugins.spotbugs)
1816 alias(libs.plugins.buildtimetracker)
@@ -30,11 +28,6 @@ allprojects {
3028 targetCompatibility = JavaVersion .VERSION_21
3129 }
3230
33- apply (plugin = " kotlin" )
34- configure<KotlinJvmProjectExtension > {
35- jvmToolchain(21 )
36- }
37-
3831 apply (plugin = " com.diffplug.spotless" )
3932 configure<SpotlessExtension > {
4033 // https://github.com/diffplug/spotless/tree/main/plugin-gradle#java
@@ -45,9 +38,6 @@ allprojects {
4538 endWithNewline()
4639 }
4740 // https://github.com/diffplug/spotless/tree/main/plugin-gradle#kotlin
48- // Compared to ktlint, it seems ktfmt is better for actual Kotlin code (more deterministic/consistent output).
49- // Furthermore, spotless is more for formatting than linting.
50- // However, it has some weird output with Gradle scripts, so using ktlint for that.
5141 kotlin {
5242 ktfmt().googleStyle()
5343 trimTrailingWhitespace()
@@ -58,9 +48,15 @@ allprojects {
5848 trimTrailingWhitespace()
5949 endWithNewline()
6050 }
51+ // https://github.com/diffplug/spotless/tree/main/plugin-gradle#scala
52+ scala {
53+ scalafmt().configFile(" $rootDir /scalafmt.conf" )
54+ trimTrailingWhitespace()
55+ endWithNewline()
56+ }
6157 }
6258
63- // TODO Kotlin alternative?
59+ // TODO Kotlin/Scala alternative?
6460 apply (plugin = " checkstyle" )
6561 configure<CheckstyleExtension > {
6662 toolVersion = " 10.12.0"
@@ -114,17 +110,6 @@ allprojects {
114110 }
115111 }
116112
117- val previewFeatures = emptyList<String >()
118- tasks.withType<JavaCompile > {
119- options.compilerArgs = previewFeatures
120- }
121- tasks.withType<Test > {
122- jvmArgs = previewFeatures
123- }
124- tasks.withType<JavaExec > {
125- jvmArgs = previewFeatures
126- }
127-
128113 dependencies {
129114 implementation(rootProject.libs.spotbugs.annotations)
130115
0 commit comments