#!/usr/bin/env kotlin plugins { kotlin("jvm") version "1.9.22" kotlin("plugin.serialization") version "1.9.22" application } repositories { mavenCentral() } dependencies { implementation("io.ktor:ktor-server-core:2.3.7") implementation("io.ktor:ktor-server-netty:2.3.7") implementation("io.ktor:ktor-server-content-negotiation:2.3.7") implementation("io.ktor:ktor-serialization-kotlinx-json:2.3.7") implementation("io.ktor:ktor-server-websockets:2.3.7") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.2") implementation("ch.qos.logback:logback-classic:1.4.14") implementation("org.mariadb.jdbc:mariadb-java-client:3.3.3") implementation("com.zaxxer:HikariCP:5.1.0") testImplementation(kotlin("test")) } application { mainClass.set("org.pavloveugene.iot.backend.ApplicationKt") } tasks.jar { manifest { attributes["Main-Class"] = "org.pavloveugene.iot.backend.ApplicationKt" } from({ configurations.runtimeClasspath.get().map { zipTree(it) } }) duplicatesStrategy = DuplicatesStrategy.EXCLUDE } tasks.processResources { from("../db/migrations") { into("db/migration") } }