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

使用Kotlin开发Android应用时出现ResourceCompilerRunnable构建错误

排查与解决Android构建中ResourceCompilerRunnable执行失败问题
  • 清理缓存并重建项目
    先执行命令清理项目缓存:

    ./gradlew clean
    

    再重新构建:

    ./gradlew assembleDebug
    

    多数资源编译异常是缓存脏数据导致的,这一步能解决大部分基础问题。

  • 检查资源文件合法性

    • 排查所有res目录下的XML文件(布局、drawable、values等),确认没有语法错误:比如标签未闭合、属性拼写错误、引用不存在的资源ID
    • 检查图片资源:确认没有损坏的图片,文件名不含特殊字符(如空格、中文),格式符合Android支持要求(低版本注意WebP兼容性)
    • 检查字符串资源:特殊字符(如&、<、>)必须转义,比如用&amp;替代&
  • 校验AGP与Gradle版本兼容性
    Android Gradle Plugin(AGP)和Gradle版本必须匹配,版本不兼容会导致资源编译流程异常。可以在项目根目录的build.gradle调整AGP版本:

    dependencies {
        classpath "com.android.tools.build:gradle:7.4.2"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.8.0"
    }
    

    同时在gradle/wrapper/gradle-wrapper.properties对应调整Gradle版本:

    distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
    

    注意AGP 7.x对应Gradle 7.0+,AGP 8.x对应Gradle 8.0+,需保证版本匹配。

  • 排查资源冲突或重复定义

    • 检查多模块项目中是否存在同名资源(比如两个library都定义了@string/app_name)
    • 确认资源文件中没有重复的ID,或使用了系统已占用的资源名称
  • 查看详细构建日志定位问题
    执行构建时添加--info参数,获取更详细的错误详情,能直接定位到出错的资源文件:

    ./gradlew assembleDebug --info
    

    日志中会明确标注哪个资源文件编译失败,以及具体错误原因。

  • 检查JDK版本匹配度
    AGP版本对JDK有明确要求:AGP 7.x需要JDK 11,AGP 8.x需要JDK 17。可以在Android Studio的File > Project Structure > SDK Location中调整JDK路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 19:36:32