Kotlin 多平台库未生成 iosSimulatorArm64Main、iosArm64Main、iosX64Main 和测试目标

问题描述 投票:0回答:1

我正在创建一个 kotlin 多平台库,它在

commonMain
中只有 kotlin 代码,在 iOS main 和 androidMain 中没有任何内容,

并且正在使用 GithubPackages 来分发它,使用命令行

./gradlew publish
,我将其发布到 GitHub 包,但它无法生成
 iosSimulatorArm64Main, iosSimulatorArm64Test, iosArm64Main, iosArm64Test, iosX64Test
所需的资源,该库在 Android 项目中运行良好,但根本无法运行与 KMM 项目

我的图书馆

build.gradle.kts
看起来像这样

plugins {
    alias(libs.plugins.kotlinMultiplatform)
    alias(libs.plugins.androidLibrary)
    `maven-publish`
}

group = "in.getswipe"
version = "0.0.5"

@OptIn(org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi::class)
kotlin {
    targetHierarchy.default()

    androidTarget {
        compilations.all {
            kotlinOptions {
                jvmTarget = "1.8"
            }
        }
    }

    listOf(
        iosX64(),
        iosArm64(),
        iosSimulatorArm64()
    ).forEach {
        it.binaries.framework {
            baseName = "in.getswipe"
        }
    }

    sourceSets {
        val commonMain by getting {
            dependencies {
                //put your multiplatform dependencies here
            }
        }
        val commonTest by getting {
            dependencies {
                implementation(libs.kotlin.test)
            }
        }
    }

    publishing {

        repositories {
            maven {
                name = "GitHubPackages"
                url = uri("https://maven.pkg.github.com/suraj/calculation-engine")
                credentials {
                    username = project.findProperty("gpr.user") as String?
                    password = project.findProperty("gpr.token") as String?
                }
            }
        }
    }
}

android {
    namespace = "get.calculation_engine"
    compileSdk = 34
    defaultConfig {
        minSdk = 24
    }
}

我的 KMM 项目的

build.gradle.kts
看起来像这样

https://pastebin.com/t48Tsq6x

我收到的错误看起来像这样 error message

android ios kotlin kotlin-multiplatform
1个回答
0
投票

您在什么机器上构建?为了构建 Mac 工件,构建需要在 Mac 计算机上进行。否则,这些任务将被跳过。

对于我自己的项目,我使用 GitHub 工作流程,利用 mac 目标来构建 iOS 工件,并利用 ubuntu 目标来构建 Linux 和 Windows。 (此处相关工作流程示例

© www.soinside.com 2019 - 2024. All rights reserved.