繁体   English   中英

iOS cocoaods 框架未在 Kotlin 多平台项目中生成

[英]iOS cocoaods framework not generating in Kotlin Multiplatform project

我正在创建 KMM 库。 我想创建一个 cocoapods 框架,但是当我尝试构建我的项目时,该框架没有生成。 我尝试了clean的项目并再次build 我的 cocoapods 根本没有在构建文件夹中生成。 我不明白为什么这不起作用。 我正在添加我的构建文件。

build.gradle.kts

plugins {
    kotlin("multiplatform") version "1.6.21"
    kotlin("native.cocoapods") version "1.6.21"
    id("com.android.library")
    id("org.jetbrains.dokka") version "1.6.10"
    id("org.jetbrains.kotlin.plugin.serialization") version "1.6.21"
    id("maven-publish")
}

val libraryVersion = "0.0.1"
var libraryGroup = "com.vivek"
var libraryArtifactId = "kmm-module"
var libraryUri = uri("https://maven.pkg.github.com/vivek/KotlinMultiplatformMobile")

repositories {
    google()
    mavenCentral()
}

kotlin {
    android {
        publishLibraryVariants("release", "debug")
    }

    cocoapods {
        version = libraryVersion
        summary = "Some description for a Kotlin/Native module"
        homepage = ""
        ios.deploymentTarget = "13.0"
        name = "VivekKmmPod"
        framework {
            baseName = "VivekFramework"
            isStatic = false
        }
    }

    iosX64()
    iosArm64()
    iosSimulatorArm64()

    sourceSets {
        val ktorVersion = "2.0.0"
        val commonMain by getting {
            dependencies {
                implementation("io.ktor:ktor-client-core:$ktorVersion")
                implementation("io.ktor:ktor-client-logging:$ktorVersion")
                implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion")
                implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion")
                implementation("io.ktor:ktor-client-auth:$ktorVersion")
                implementation("org.jetbrains.kotlinx:kotlinx-serialization-core:1.3.2")
                implementation("io.insert-koin:koin-core:3.2.0")
            }
        }
        val androidMain by getting {
            dependencies {
                implementation("io.ktor:ktor-client-okhttp:$ktorVersion")
                implementation("io.ktor:ktor-client-logging-jvm:$ktorVersion")
            }
        }

        val iosX64Main by getting
        val iosArm64Main by getting
        val iosSimulatorArm64Main by getting
        val iosMain by creating {
            dependsOn(commonMain)
            iosX64Main.dependsOn(this)
            iosArm64Main.dependsOn(this)
            iosSimulatorArm64Main.dependsOn(this)
            dependencies {
                implementation("io.ktor:ktor-client-darwin:$ktorVersion")
            }
        }
    }
}

android {
    compileSdk = 21
    sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
    defaultConfig {
        minSdk = 21
        targetSdk = 31
    }
}

tasks {
    create<Jar>("javadocJar") {
        val dokkaHtml by getting(org.jetbrains.dokka.gradle.DokkaTask::class)
        dependsOn(dokkaHtml)
        archiveClassifier.set("javadoc")
        from(dokkaHtml.outputDirectory)
    }
}

publishing {
    publications {
        group = libraryGroup
        publications.withType<MavenPublication> {
            artifactId.toLowerCase()
            groupId = libraryGroup
            artifactId = libraryArtifactId
            version = libraryVersion

            artifact(tasks["javadocJar"])
        }

        repositories {
            maven {
                url = libraryUri
                credentials {
                    username = (System.getenv("GITHUB_USER") ?: project.properties["GITHUB_USER"]).toString()
                    password = (System.getenv("GITHUB_PERSONAL_ACCESS_TOKEN") ?: project.properties["GITHUB_PERSONAL_ACCESS_TOKEN"]).toString()
                }
            }
        }
    }
}

如您所见,构建文件夹中没有生成任何框架。

在此处输入图像描述

只需同步项目...将创建框架文件..或尝试./gradlew build

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM