В прошлом мы работали над мультиплатформенным проектом kotlin для мобильных устройств, который использует sqldelight для доступа к базе данных.
Теперь мы хотим добавить некоторые собственные цели рабочего стола, такие как mingwX64 и linuxX64, но в настоящее время sqldelight недоступен для этих целей, поэтому мы хотим использовать другие библиотеки для обработки доступа к базе данных на рабочем столе. Но как настроить конфигурацию sqldelight для работы только с целями Android и iOS?
Текущий build.gradle.kts выглядит так:
plugins {
kotlin("multiplatform")
id("com.squareup.sqldelight")
id("kotlinx-serialization")
id("com.android.library")
}
android {
...
}
sqldelight {
database("Database") {
packageName = "foo.bar
schemaOutputDirectory = file("src/foo
}
}
kotlin {
// Targets
val android = android()
val iosX64 = iosX64()
val jvm = jvm()
val linuxX64 = linuxX64()
val windows = mingwX64()
...
sourceSets {
val commonMain by getting {
dependencies {
implementation(kotlin("stdlib"))
//implementation("com.squareup.sqldelight:runtime:${rootProject.ext["sqldelightVersion"]}")
}
}
...
}
Из-за: plugins { id("com.squareup.sqldelight")
среда выполнения sqldelight автоматически добавлена к зависимостям для Linux и Windows.
Спасибо и наилучшими пожеланиями