diff --git a/build.gradle.kts b/build.gradle.kts index d6cd96e..6ec8c48 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,11 +1,13 @@ plugins { kotlin("jvm") version "2.0.20" id("org.jetbrains.kotlinx.kover") version "0.8.3" + `maven-publish` } subprojects { apply(plugin = "org.jetbrains.kotlin.jvm") apply(plugin = "org.jetbrains.kotlinx.kover") + apply(plugin = "maven-publish") group = "ai.ancf.lmos" version = "1.0-SNAPSHOT" @@ -16,6 +18,19 @@ subprojects { testImplementation("io.mockk:mockk:1.13.13") } + publishing { + publications { + create("mavenKotlin") { + from(components["java"]) + artifactId = project.name + } + } + repositories { + mavenLocal() + } + } + + tasks.test { useJUnitPlatform() diff --git a/kotlin-wot-binding-http/build.gradle.kts b/kotlin-wot-binding-http/build.gradle.kts index 8b103b9..34308ff 100644 --- a/kotlin-wot-binding-http/build.gradle.kts +++ b/kotlin-wot-binding-http/build.gradle.kts @@ -1,8 +1,5 @@ -plugins { - id("io.ktor.plugin") version "3.0.0" -} - dependencies { + implementation(platform("io.ktor:ktor-bom:3.0.3")) api(project(":kotlin-wot")) implementation("org.slf4j:slf4j-api") implementation("io.ktor:ktor-server-core") diff --git a/kotlin-wot-binding-websocket/build.gradle.kts b/kotlin-wot-binding-websocket/build.gradle.kts index 2f34b08..f842d83 100644 --- a/kotlin-wot-binding-websocket/build.gradle.kts +++ b/kotlin-wot-binding-websocket/build.gradle.kts @@ -1,8 +1,5 @@ -plugins { - id("io.ktor.plugin") version "3.0.0" -} - dependencies { + implementation(platform("io.ktor:ktor-bom:3.0.3")) api(project(":kotlin-wot")) api(project(":kotlin-wot-lmos-protocol")) implementation("org.slf4j:slf4j-api") diff --git a/kotlin-wot-integration-tests/build.gradle.kts b/kotlin-wot-integration-tests/build.gradle.kts index a0d298c..ff0463f 100644 --- a/kotlin-wot-integration-tests/build.gradle.kts +++ b/kotlin-wot-integration-tests/build.gradle.kts @@ -1,3 +1,5 @@ +import org.springframework.boot.gradle.tasks.bundling.BootJar + plugins { kotlin("plugin.spring") version "1.9.10" id("org.springframework.boot") version "3.1.5" // Use the latest compatible version @@ -18,4 +20,8 @@ dependencies { testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("com.hivemq:hivemq-mqtt-client:1.3.3") implementation("org.testcontainers:testcontainers:1.20.3") -} \ No newline at end of file +} + +tasks.withType { + mainClass.set("integration.AgentApplication") +} diff --git a/kotlin-wot-lmos-protocol/build.gradle.kts b/kotlin-wot-lmos-protocol/build.gradle.kts index a2c2aff..aa6b6ac 100644 --- a/kotlin-wot-lmos-protocol/build.gradle.kts +++ b/kotlin-wot-lmos-protocol/build.gradle.kts @@ -1,7 +1,4 @@ -plugins { - id("io.ktor.plugin") version "3.0.0" -} - dependencies { + implementation(platform("io.ktor:ktor-bom:3.0.3")) implementation("io.ktor:ktor-serialization-jackson") } \ No newline at end of file diff --git a/kotlin-wot-spring-boot-starter/build.gradle.kts b/kotlin-wot-spring-boot-starter/build.gradle.kts index 27623ff..0e80427 100644 --- a/kotlin-wot-spring-boot-starter/build.gradle.kts +++ b/kotlin-wot-spring-boot-starter/build.gradle.kts @@ -1,3 +1,5 @@ +import org.springframework.boot.gradle.tasks.bundling.BootJar + plugins { kotlin("plugin.spring") version "1.9.10" id("org.springframework.boot") version "3.1.5" // Use the latest compatible version @@ -15,4 +17,12 @@ dependencies { testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation(project(":kotlin-wot-binding-http")) testImplementation(project(":kotlin-wot-binding-websocket")) +} + +tasks.getByName("bootJar") { + enabled = false +} + +tasks.getByName("jar") { + enabled = true } \ No newline at end of file