Files
2026-02-08 11:20:43 -10:00

75 lines
2.0 KiB
Kotlin
Vendored

import org.jetbrains.dataframe.gradle.DataSchemaVisibility
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
with(convention.plugins) {
alias(kotlinJvm8)
}
with(libs.plugins) {
alias(publisher)
}
}
group = "org.jetbrains.kotlinx"
repositories {
// osgeo repository should come before Maven Central
maven(url = "https://repo.osgeo.org/repository/release")
mavenCentral()
mavenLocal()
}
kotlin.sourceSets {
main {
kotlin.srcDir("src/generated-dataschema-accessors/main/kotlin/")
}
}
// https://stackoverflow.com/questions/26993105/i-get-an-error-downloading-javax-media-jai-core1-1-3-from-maven-central
// jai core dependency should be excluded from geotools dependencies and added separately
fun ExternalModuleDependency.excludeJaiCore() = exclude("javax.media", "jai_core")
dependencies {
api(projects.core)
// Geotools
implementation(libs.geotools.main) { excludeJaiCore() }
implementation(libs.geotools.shapefile) { excludeJaiCore() }
implementation(libs.geotools.geojson) { excludeJaiCore() }
implementation(libs.geotools.referencing) { excludeJaiCore() }
implementation(libs.geotools.epsg.hsql) { excludeJaiCore() }
// JAI
implementation(libs.jai.core)
// JTS
implementation(libs.jts.core)
implementation(libs.jts.io.common)
// Ktor
implementation(libs.ktor.client.core)
implementation(libs.ktor.client.cio)
implementation(libs.ktor.client.content.negotiation)
implementation(libs.ktor.serialization.kotlinx.json)
testImplementation(kotlin("test"))
testImplementation(projects.dataframeJson)
}
tasks.withType<KotlinCompile>().configureEach {
friendPaths.from(project(projects.core.path).projectDir)
}
kotlinPublications {
publication {
publicationName = "dataframeGeo"
artifactId = project.name
description = "GeoDataFrame API"
packageName = artifactId
}
}
tasks.test {
useJUnitPlatform()
}