qr-access-hardware-contract/build.gradle.kts
2025-01-02 21:55:31 +03:00

56 lines
1.1 KiB
Plaintext

plugins {
kotlin("jvm") version "2.0.21"
id("org.openapi.generator") version "7.10.0"
id("maven-publish")
}
group = "ru.vyatsu"
version = "1.0.0"
val generatedSourcesDir = "$buildDir/generated/openapi"
repositories {
mavenCentral()
}
dependencies {
compileOnly("com.squareup.okhttp3:okhttp:4.12.0")
compileOnly("com.squareup.moshi:moshi-kotlin:1.15.2")
testImplementation(kotlin("test"))
}
tasks.test {
useJUnitPlatform()
}
kotlin {
jvmToolchain(17)
}
tasks.openApiGenerate {
generatorName.set("kotlin")
inputSpec.set("$rootDir/src/main/resources/openapi-contract.yaml")
outputDir.set(generatedSourcesDir)
packageName.set("ru.vyatsu")
}
sourceSets {
getByName("main") {
kotlin {
srcDir("$generatedSourcesDir/src/main/kotlin")
}
}
}
tasks.compileKotlin {
dependsOn(tasks.openApiGenerate)
}
publishing {
publications {
create<MavenPublication>("maven") {
from(components["kotlin"])
artifactId = tasks.jar.get().archiveBaseName.get()
}
}
}