import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { kotlin("jvm") kotlin("plugin.serialization") application } group = "de.moritzruth.dracula_musical" version = "1.0-SNAPSHOT" allprojects { tasks.withType { kotlin { jvmToolchain(22) } compilerOptions { freeCompilerArgs.add("-Xcontext-receivers") freeCompilerArgs.add("-Xwhen-guards") optIn = listOf( "kotlin.RequiresOptIn", "kotlin.ExperimentalUnsignedTypes", "kotlin.contracts.ExperimentalContracts", "kotlinx.serialization.ExperimentalTime" ) } } } dependencies { implementation(KotlinX.coroutines.core) implementation(KotlinX.collections.immutable) implementation(KotlinX.serialization.json) implementation(KotlinX.datetime) implementation(Ktor.server.core) implementation(Ktor.server.websockets) implementation(Ktor.server.cio) implementation(Ktor.server.contentNegotiation) implementation(Ktor.plugins.serialization.kotlinx.json) implementation("org.slf4j:slf4j-simple:_") implementation("com.fazecast:jSerialComm:_") implementation("io.github.oshai:kotlin-logging-jvm:_") } application { mainClass.set("de.moritzruth.dracula_musical.MainKt") }