You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复Android Studio Giraffe中的kaptGenerateStubsDebugKotlin任务异常

解决JVM Target兼容性不匹配错误(:app:kaptGenerateStubsDebugKotlin)

错误信息

Execution failed for task ':app:kaptGenerateStubsDebugKotlin'.

'compileDebugJavaWithJavac' task (current target is 1.8) and 'kaptGenerateStubsDebugKotlin' task (current target is 17) jvm target compatibility should be set to the same Java version.
Consider using JVM toolchain: https://kotl.in/gradle/jvm/toolchain

问题原因

Java编译任务与kapt的stubs生成任务使用的JVM目标版本不一致,即便已在kotlinOptions中设置jvmTarget = "1.8",kapt仍可能未继承该配置,导致版本冲突。

解决方案

方法1:使用JVM Toolchain统一版本**(推荐)**

在app模块的build.gradle的android块中添加toolchain配置,统一所有编译任务的JVM版本:

android {
    // 保留原有其他配置
    namespace = "com.test.test"
    compileSdk = 33
    // ... 其他配置
    
    // 替换或补充以下配置
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
    // 添加Toolchain配置
    java {
        toolchain {
            languageVersion = JavaLanguageVersion.of(8)
        }
    }
}

Toolchain是官方推荐的方式,能确保Java编译、Kotlin编译、kapt等所有相关任务使用完全一致的JVM版本,从根源避免版本不匹配问题。

方法2:直接为kapt指定JVM版本

若不想使用Toolchain,可在kapt配置块中强制指定JVM目标版本,与Java编译版本保持一致:

// Allow references to generated code
kapt {
    correctErrorTypes = true
    generateStubs = true
    // 添加以下配置
    javacOptions {
        option("-source", "1.8")
        option("-target", "1.8")
    }
}

方法3:同步Compose Compiler与Kotlin版本(可选)

当前使用的Kotlin 1.8.10与Compose Compiler 1.4.3版本不匹配(Kotlin 1.8.x对应Compose Compiler 1.4.7+),虽然不是当前错误的直接原因,但更新后可避免潜在问题:

composeOptions {
    kotlinCompilerExtensionVersion = "1.4.7"
}

后续操作

  1. 修改配置后,点击Android Studio右上角的Sync Project with Gradle Files按钮重新同步项目
  2. 若问题仍存在,执行File -> Invalidate Caches... -> Invalidate and Restart清除缓存并重启IDE

内容的提问来源于stack exchange,提问作者reza_khalafi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 00:27:48