解决AGP升级到8.0后编译报错kaptGenerateStubsDebugKotlin

问题描述

升级了Gradle插件到8.0,运行报以下错误.

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

* Try:
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

解决方案

看错误是Kapt和java版本不兼容,根据提示的网站地址(https://kotl.in/gradle/jvm/toolchain),AGP版本小于8.1.0,需要显式的设置jdk的兼容版本。如果不指定版本,Android默认使用的是JDK1.8。

A warning for Android users. To use Gradle toolchain support, use the Android Gradle plugin (AGP) version 8.1.0-alpha09 or higher.

Gradle Java toolchain support is available only from AGP 7.4.0. Nevertheless, because of this issue, AGP did not set targetCompatibility to be equal to the toolchain's JDK until the version 8.1.0-alpha09. If you use versions less than 8.1.0-alpha09, you need to configure targetCompatibility manually via compileOptions. Replace the placeholder <MAJOR_JDK_VERSION> with the JDK version you would like to use:

android {
    compileOptions {
        sourceCompatibility = <MAJOR_JDK_VERSION>
        targetCompatibility = <MAJOR_JDK_VERSION>
    }
}

打开app的build.gradle,在android块中添加以下代码,设置java的版本为本地对应的版本,因为我本地的是17,所以都为17.

android {
	....
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_17
        targetCompatibility JavaVersion.VERSION_17
    }

    kotlinOptions {
        jvmTarget = '17'
    }
    ....
}

重新运行,报错消失。

最近更新

  1. TCP协议是安全的吗?

    2024-04-20 21:26:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-20 21:26:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-20 21:26:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-20 21:26:01       18 阅读

热门阅读

  1. 计算机网络

    2024-04-20 21:26:01       14 阅读
  2. 【eladmin项目拆解】登录功能实现源码

    2024-04-20 21:26:01       13 阅读
  3. 怎么用3ds MAX制作蜂窝状模型?

    2024-04-20 21:26:01       12 阅读
  4. SiteServer 学习笔记 Day08 内容补充

    2024-04-20 21:26:01       15 阅读
  5. 面了百度自驾算法岗(实习),这次我要上岸了

    2024-04-20 21:26:01       15 阅读
  6. Jmeter redis连接测试

    2024-04-20 21:26:01       13 阅读
  7. Spring+Thymeleaf自定义Formatter

    2024-04-20 21:26:01       15 阅读