When spring-boot-starter-data-jdbc and jackson-module-kotlin are both present in my gradle.build.kts kotlin.time.Duration.Companion.minutes stops compiling
JVM: 17.0.2 Gradle: 7.3.3
build.gradle.kts:
plugins {
id("org.springframework.boot") version "2.6.3"
id("io.spring.dependency-management") version "1.0.11.RELEASE"
kotlin("jvm") version "1.6.10"
kotlin("plugin.spring") version "1.6.10"
}
dependencies {
implementation("org.springframework.boot:spring-boot-starter")
implementation("org.springframework.boot:spring-boot-starter-actuator")
implementation("org.springframework.boot:spring-boot-starter-data-jdbc")
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
runtimeOnly("mysql:mysql-connector-java")
testImplementation("org.springframework.boot:spring-boot-starter-test")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.13.1")
}
DemoApplication:
package com.example.demo
import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.runApplication
import kotlin.time.Duration.Companion.minutes
@SpringBootApplication
class DemoApplication
fun main(args: Array<String>) {
val ok = 10.minutes
runApplication<DemoApplication>(*args)
}
Error: DemoApplication.kt: (5, 39): Unresolved reference: minutes
Removing jackson-module-kotlin (or starter-data-jdbc) lets it compiles correctly. Found this issue when trying to update to the latest version of kotest and got a classnotfound exception. Not sure if this is Spring, jackson or gradle issue.