Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maven Publish plugin makes SQLDelight Native dependency disappear #2590

Closed
nsekhar90 opened this issue Sep 23, 2021 · 1 comment
Closed

Maven Publish plugin makes SQLDelight Native dependency disappear #2590

nsekhar90 opened this issue Sep 23, 2021 · 1 comment
Labels

Comments

@nsekhar90
Copy link

SQLDelight Version

1.5.1

Operating System

MacOS

Gradle Version

7.2.0

Kotlin Version

1.5.21

AGP Version

com.android.tools.build:gradle:7.0.2

Describe the Bug

I am able to use the SQLDelight library for both android & iOS platforms and build an aar/fat-framework.

Recently, we wanted to publish the artifacts into artifactory and when we started using maven-publish plugin, SQLDelight on native fails with following error:

When i remove the maven-publish plugin, everything works fine again. Im both surprised & confused with the problem :| .

Task :shared:compileIosMainKotlinMetadata FAILED
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (3, 12): Unresolved reference: squareup
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (4, 12): Unresolved reference: squareup
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (7, 32): Unresolved reference: SqlDriver
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (8, 16): Unresolved reference: NativeSqliteDriver
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (8, 47): Cannot access class 'com.squareup.sqldelight.db.SqlDriver.Schema'. Check your module classpath for missing or conflicting dependencies

Here is my plugins block

plugins {
    kotlin("multiplatform")
    id("com.android.library")
    kotlin("plugin.serialization")
    id("com.squareup.sqldelight")
//    id("maven-publish")
}

kotlin block:

kotlin {
    android {
        configurations {
            create("testApi")
            create("testDebugApi")
            create("testReleaseApi")
        }
    }
    ios {
        binaries {
            framework {
                baseName = frameworkName
            }
        }
    }

    val onPhone = System.getenv("SDK_NAME")?.startsWith("iphoneos") ?: false
    if (onPhone) {
        iosArm64("ios")
    } else {
        iosX64("ios")
    }

    sourceSets {
        val commonMain by getting {
            dependencies {
                api(Libs.Common.coroutines) {
                    version {
                        strictly(Libs.Common.coroutinesVersion)
                    }
                }
                api(Libs.Common.serialization)

                api(Libs.Common.ktorClient)
                api(Libs.Common.ktorClientSerialization)

                api(Libs.Common.loggingJVM)
                api(Libs.Common.ktorLogging)

                api(Libs.Common.koin)
                api(Libs.Common.napierLogger)

                api("com.soywiz.korlibs.klock:klock:2.0.7")

                api("com.squareup.sqldelight:runtime:${Versions.sqlDelight}")
            }
        }
        val commonTest by getting {
            dependencies {
                implementation(kotlin("test-common"))
                implementation(kotlin("test-annotations-common"))
            }
        }
        val androidMain by getting {
            dependencies {
                implementation("com.google.android.material:material:1.2.1")

                //Ktor & Logging
                api(Libs.Android.ktorAndroidClientLogger)
                api(Libs.Android.ktorAndroidClient)

                api(Libs.Android.coroutinesAndroid)
                api(Libs.Android.koinAndroid)
                api(Libs.Android.sqlDriverAndroid)

                api(Libs.Android.Adobe.core)
                api(Libs.Android.Adobe.analytics)
                api(Libs.Android.Adobe.mobileServices)
            }
        }
        val androidTest by getting {
            dependencies {
                implementation(kotlin("test-junit"))
                implementation("junit:junit:4.13")
            }
        }
        val iosMain by getting {
            dependencies {
                implementation(Libs.iOS.ktorIOSClient)
                implementation(Libs.iOS.ktorIOSLogger)
                implementation(Libs.iOS.sqlDriverNative)
            }
        }
        val iosTest by getting
    }
}

sqldelight {
    database("AppDatabase") {
        packageName = "com.tps.shared.cache"
    }
}

Stacktrace

> Task :shared:compileIosMainKotlinMetadata FAILED
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (3, 12): Unresolved reference: squareup
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (4, 12): Unresolved reference: squareup
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (7, 32): Unresolved reference: SqlDriver
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (8, 16): Unresolved reference: NativeSqliteDriver
e: /Users/sekhar_nalla/StudioProjects/itpskmploggingsdk/shared/src/iosMain/kotlin/com/itps/shared/cache/DatabaseDriverFactory.kt: (8, 47): Cannot access class 'com.squareup.sqldelight.db.SqlDriver.Schema'. Check your module classpath for missing or conflicting dependencies

Gradle Build Script

No response

@nsekhar90 nsekhar90 added the bug label Sep 23, 2021
@AlecKazakova
Copy link
Collaborator

Should be fixed on master

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants