Spaces:
Build error
Build error
| plugins { | |
| kotlin("jvm") version "2.1.20" | |
| kotlin("plugin.serialization") version "2.1.20" | |
| application | |
| } | |
| application { | |
| mainClass.set("org.coralprotocol.coralserver.MainKt") | |
| } | |
| group = "org.coralprotocol" | |
| version = "1.0-SNAPSHOT" | |
| repositories { | |
| mavenCentral() | |
| maven { | |
| url = uri("https://central.sonatype.com/repository/maven-snapshots/") | |
| name = "sonatypeSnapshots" | |
| } | |
| maven("https://repo.repsy.io/mvn/chrynan/public") | |
| maven("https://github.com/CaelumF/schema-kenerator/raw/develop/maven-repo") | |
| } | |
| dependencies { | |
| testImplementation(kotlin("test")) | |
| implementation("io.modelcontextprotocol:kotlin-sdk:0.5.0") | |
| implementation("org.slf4j:slf4j-simple:2.0.9") | |
| implementation("io.github.oshai:kotlin-logging-jvm:7.0.3") | |
| implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.1") | |
| implementation("org.jetbrains.kotlinx:kotlinx-serialization-core:1.8.1") | |
| implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.1") | |
| implementation("com.charleskorn.kaml:kaml:0.78.0") // YAML serialization | |
| implementation("io.github.pdvrieze.xmlutil:core:0.91.0") // XML serialization | |
| implementation("io.github.pdvrieze.xmlutil:serialization:0.91.0") | |
| implementation("io.github.pdvrieze.xmlutil:core-jdk:0.91.0") | |
| implementation("io.github.pdvrieze.xmlutil:serialization-jvm:0.91.0") | |
| implementation("com.github.docker-java:docker-java:3.5.1") | |
| // Hoplite for configuration | |
| implementation("com.sksamuel.hoplite:hoplite-core:2.9.0") | |
| implementation("com.sksamuel.hoplite:hoplite-yaml:2.9.0") | |
| val ktorVersion = "3.0.2" | |
| implementation(enforcedPlatform("io.ktor:ktor-bom:$ktorVersion")) | |
| implementation("io.ktor:ktor-server-status-pages:${ktorVersion}") | |
| val uriVersion="0.5.0" | |
| implementation("com.chrynan.uri.core:uri-core:$uriVersion") | |
| implementation("com.chrynan.uri.core:uri-ktor-client:$uriVersion") | |
| // Ktor testing dependencies | |
| testImplementation("io.ktor:ktor-server-test-host") | |
| testImplementation("io.ktor:ktor-client-mock") | |
| val arcVersion = "0.126.0" | |
| // Arc agents for E2E tests | |
| testImplementation("org.eclipse.lmos:arc-agents:$arcVersion") | |
| testImplementation("org.eclipse.lmos:arc-mcp:$arcVersion") | |
| testImplementation("org.eclipse.lmos:arc-server:$arcVersion") | |
| testImplementation("org.eclipse.lmos:arc-azure-client:$arcVersion") | |
| testImplementation("org.eclipse.lmos:arc-langchain4j-client:$arcVersion") | |
| testImplementation("io.modelcontextprotocol.sdk:mcp:0.11.0-SNAPSHOT") // Override MCP Java client for Arc 0.126.0 | |
| testImplementation("io.mockk:mockk:1.14.2") | |
| // kotest | |
| // TODO: Use kotest for some or all tests | |
| // val kotestVersion = "5.9.1" | |
| // testImplementation("io.kotest:kotest-runner-junit5:$kotestVersion") | |
| // testImplementation("io.kotest:kotest-assertions-core:$kotestVersion") | |
| // testImplementation("io.kotest:kotest-property:$kotestVersion") | |
| // Ktor client dependencies | |
| implementation("io.ktor:ktor-client-logging") | |
| implementation("io.ktor:ktor-client-content-negotiation") | |
| implementation("io.ktor:ktor-client-cio-jvm") | |
| implementation("io.ktor:ktor-serialization-kotlinx-json") | |
| implementation("io.ktor:ktor-client-plugins") | |
| implementation("net.pwall.json:json-kotlin-schema:0.56") | |
| // Ktor server dependencies | |
| implementation("io.ktor:ktor-server-core") | |
| implementation("io.ktor:ktor-server-cio") | |
| implementation("io.ktor:ktor-server-sse") | |
| implementation("io.ktor:ktor-server-html-builder") | |
| implementation("io.ktor:ktor-server-cors") | |
| implementation("io.ktor:ktor-server-content-negotiation") | |
| implementation("io.ktor:ktor-server-resources") | |
| testImplementation("io.ktor:ktor-server-core") | |
| testImplementation("io.ktor:ktor-server-cio") | |
| testImplementation("io.ktor:ktor-server-sse") | |
| // TOML serialization | |
| implementation("com.akuleshov7:ktoml-core:0.7.0") | |
| implementation("com.akuleshov7:ktoml-file:0.7.0") | |
| // OpenAPI | |
| val ktorToolsVersion = "5.2.0" | |
| implementation("io.github.smiley4:ktor-openapi:${ktorToolsVersion}") | |
| implementation("io.github.smiley4:ktor-redoc:${ktorToolsVersion}") | |
| val schemaVersion = "2.4.0.1" | |
| implementation("io.github.smiley4:schema-kenerator-core:${schemaVersion}") | |
| implementation("io.github.smiley4:schema-kenerator-serialization:${schemaVersion}") | |
| implementation("io.github.smiley4:schema-kenerator-swagger:${schemaVersion}") | |
| } | |
| tasks.test { | |
| useJUnitPlatform() | |
| } | |
| tasks.jar { | |
| manifest { | |
| attributes["Main-Class"] = "org.coralprotocol.coralserver.MainKt" | |
| } | |
| from(configurations.runtimeClasspath.get().map { if (it.isDirectory) it else zipTree(it) }) | |
| duplicatesStrategy = DuplicatesStrategy.EXCLUDE | |
| exclude("META-INF/*.RSA", "META-INF/*.SF", "META-INF/*.DSA") | |
| } | |
| kotlin { | |
| jvmToolchain(21) | |
| } | |