plugins { id("kotlin") id("application") id("com.github.johnrengelman.shadow") version "8.1.1" id("org.jetbrains.kotlin.plugin.serialization") version "$kotlin_version" } version = rootProject.version java { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } compileKotlin.kotlinOptions.jvmTarget = "17" compileTestKotlin.kotlinOptions.jvmTarget = "17" sourceSets.main.java.srcDirs = ["src/main/kotlin"] dependencies { // Core language libraries implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version") implementation(project(":common")) // Command line parsing implementation("com.github.ajalt.clikt:clikt:$clikt_version") implementation("org.postgresql:postgresql:$postgres_version") // Ktor client library implementation("io.ktor:ktor-client-apache:$ktor_version") // PDF generation implementation("com.itextpdf:itext-core:8.0.3") // UNIX domain sockets support (used to connect to PostgreSQL) implementation("com.kohlschutter.junixsocket:junixsocket-core:$junixsocket_version") // Serialization implementation("io.ktor:ktor-serialization-kotlinx-json:$ktor_version") // Unit testing testImplementation("org.jetbrains.kotlin:kotlin-test:$kotlin_version") testImplementation("io.ktor:ktor-client-mock:$ktor_version") } application { mainClassName = "tech.libeufin.nexus.MainKt" applicationName = "libeufin-nexus" } run { standardInput = System.in }