import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { id("org.springframework.boot") version "3.2.5" id("io.spring.dependency-management") version "1.1.4" kotlin("jvm") version "1.9.23" kotlin("plugin.spring") version "1.9.23" } group = "net.halfbinary" version = "0.0.7-SNAPSHOT" java { sourceCompatibility = JavaVersion.VERSION_21 } configurations { compileOnly { extendsFrom(configurations.annotationProcessor.get()) } } repositories { mavenCentral() } val mp3agicVersion = "0.9.1" val kotlinLoggingVersion = "6.0.9" val slf4jApiVersion = "2.0.13" val logbackVersion = "1.5.6" val coroutinesVersion = "1.8.1" dependencies { implementation("org.springframework.boot:spring-boot-starter-web") implementation("com.fasterxml.jackson.module:jackson-module-kotlin") implementation("org.jetbrains.kotlin:kotlin-reflect") implementation("com.mpatric:mp3agic:$mp3agicVersion") implementation("io.github.oshai:kotlin-logging:$kotlinLoggingVersion") implementation("org.slf4j:slf4j-api:$slf4jApiVersion") implementation("ch.qos.logback:logback-core:$logbackVersion") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion") developmentOnly("org.springframework.boot:spring-boot-devtools") annotationProcessor("org.springframework.boot:spring-boot-configuration-processor") testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("ch.qos.logback:logback-classic:$logbackVersion") testRuntimeOnly("org.junit.platform:junit-platform-launcher") } tasks.withType { kotlinOptions { freeCompilerArgs += "-Xjsr305=strict" jvmTarget = "21" } } tasks.withType { useJUnitPlatform() }