我第一次try KMM,当我试图重建项目时,我得到了这个错误.不知道这个任务是做什么的.我是唯一一个犯这个错误的人吗?

我用的是一台Macbook Pro M1

Android Studio 鬣蜥|2023.2.1 运行时版本:17.0.9+0-17.0.9b1087.7-11185874 aarch64 VM:JetBrains s.r.o提供的OpenJDK 64位服务器VM.

Executing tasks: [:androidApp:clean, :shared:clean, 
:androidApp:assembleDebug, :androidApp:assembleDebugUnitTest, 
:androidApp:assembleDebugAndroidTest, :shared:assembleDebug, 
:shared:assembleDebugUnitTest, :shared:assembleDebugAndroidTest, 
:shared:assemble, :shared:testClasses] in project 
/Users/betteropinions/Development/KMM/TranslateKMMApp

Calculating task graph as no configuration cache is available for 
tasks: :androidApp:clean :shared:clean :androidApp:assembleDebug 
:androidApp:assembleDebugUnitTest 
:androidApp:assembleDebugAndroidTest :shared:assembleDebug 
:shared:assembleDebugUnitTest :shared:assembleDebugAndroidTest 
:shared:assemble :shared:testClasses
Type-safe project accessors is an incubating feature.

FAILURE: Build failed with an exception.

* What went wrong:
Cannot locate tasks that match ':shared:testClasses' as task 
'testClasses' not found in project ':shared'.

* Try: 
> Run gradle tasks to get a list of available tasks.
> For more on name expansion, please refer to 
https://docs.gradle.org/8.4/userguide/
command_line_interface.html#sec: 
name_abbreviation in the Gradle documentation.
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.

BUILD FAILED in 1s
Configuration cache entry stored.

下面是共享模块的build. gradle. kts


plugins {
    alias(libs.plugins.kotlinMultiplatform)
    alias(libs.plugins.kotlinCocoapods)
    alias(libs.plugins.androidLibrary)
    alias(libs.plugins.kotlinSerialization)
    id("com.squareup.sqldelight")
}

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

    iosX64()
    iosArm64()
    iosSimulatorArm64()

    cocoapods {
        summary = "Some description for the Shared Module"
        homepage = "Link to the Shared Module homepage"
        version = "1.0"
        ios.deploymentTarget = "16.0"
        podfile = project.file("../iosApp/Podfile")
        framework {
            baseName = "shared"
            isStatic = true
        }
    }
    
    sourceSets {

        commonMain.dependencies {
            //put your multiplatform dependencies here
            implementation(libs.ktor.client.core)
            implementation(libs.ktor.client.content.negotiation)
            implementation(libs.ktor.serialization.kotlinx.json)
            implementation(libs.sqldelight.coroutines.extensions)
            implementation(libs.sqldelight.runtime)
            implementation(libs.kotlinx.datetime)
        }

        commonTest.dependencies {
            implementation(kotlin("test"))
            implementation(libs.turbine)
            implementation(libs.assertk)
        }

        androidMain.dependencies {
            implementation(libs.ktor.client.android)
            implementation(libs.sqldelight.android.driver)
        }

        iosMain.dependencies {
            implementation(libs.ktor.client.darwin)
            implementation(libs.sqldelight.native.driver)
        }
    }
}

android {
    namespace = "com.example.mytranslate"
    compileSdk = 34
    defaultConfig {
        minSdk = 24
    }
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }
}

sqldelight {
    database("TranslateDatabase") {
        packageName = "com.example.mytranslate.database"
        sourceFolders = listOf("sqldelight")
    }
}

推荐答案

这个解决方案https://stackoverflow.com/a/78017056/6512100对我很管用.

我已经在build.gradle.kts (:shared)文件中添加了task("testClasses") in.in kotlin { }块.

plugins {
    ...
}

kotlin {
    androidTarget {
        ...
    }

    sourceSets {
        ...
    }

    task("testClasses")
}

android {
    ...
}

Android相关问答推荐

如何go 除回调流中不可用的状态?

如何在Jetpack导航中不显示目的地?

译码BLE血糖仪特征值

Android事件:APP_SCOUT_HANG警告SQLite

使用Kotlin/Compose与Java/XML指南的比较

穿戴与iPhone连接的安卓操作系统

如何在Android Studio的LinearLayout中禁用阴影

为什么我的 APK 中包含来自旧版 Android 支持库的类?

修复报错 RecyclerView: No adapter attached;跳过布局

Android:使用依赖项 ViewModelProviderFactory 初始化 ViewModel 的正确方法

compose 导航参数字符串包含花括号?

如何像 XML 一样在 Compose Android Studio 中折叠/展开小部件代码区域/区域

Android Transitions API - 在 24-48 小时后停止接收任何更新

如何关闭可组合对话框?

如何在 Jetpack Compose 中的 VisualTransformation 之后将光标保持在文本字段的末尾

无法 HEAD 'https://jcenter.bintray.com/com/facebook/react/react-native/maven-metadata.xml'

Material Design 网站的新设计已启动,但我找不到实现选项卡,该选项卡在哪里?

Jetpack Compose Material3 禁用 ListItem

Android Compose 创建抖动动画

为什么按钮没有拉伸到屏幕边缘?