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

Expo SDK 45 Android平台构建时:expo-updates:compileReleaseKotlin任务执行失败求助

解决Expo SDK 45 Android构建时expo-updates:compileReleaseKotlin失败的问题

我之前在维护Expo SDK 45项目时也碰到过一模一样的报错,折腾了一阵才找到几个靠谱的解决方向,你可以按顺序试试:

  • 统一Kotlin版本到SDK 45适配的稳定版
    Expo SDK 45对Kotlin版本有严格要求,建议你打开项目根目录的android/build.gradle,把ext.kotlin_version固定为1.6.10:

    buildscript {
        ext {
            kotlin_version = "1.6.10"
            // 保留其他原有配置...
        }
    }
    

    修改后先清理Android项目缓存:

    cd android && ./gradlew clean && cd ..
    

    再重新尝试构建。

  • 彻底清理Expo和Node依赖缓存
    缓存紊乱是这类编译问题的常见诱因,执行以下命令清空所有相关缓存:

    expo r -c
    rm -rf node_modules
    rm package-lock.json yarn.lock
    npm install
    

    完成后再构建Release版本:

    expo run:android --variant release
    
  • 锁定expo-updates的SDK 45专属版本
    SDK 45对应的expo-updates稳定版是~0.13.4,你可以直接在package.json里指定这个版本,避免自动拉取不兼容的更新:

    "dependencies": {
        "expo-updates": "~0.13.4",
        // 保留其他依赖...
    }
    

    重新安装依赖后再清理缓存构建。

  • 检查Android SDK组件是否完整
    打开Android Studio的SDK Manager,确认安装了Android SDK Build-Tools 31.0.0和**Android 12 (API 31)**的SDK平台组件——这两个是SDK 45强制要求的,缺失的话补全后再尝试构建。

  • 排查第三方依赖的Kotlin版本冲突
    有些第三方库可能会引入不一致的Kotlin依赖,你可以运行以下命令查看项目中所有Kotlin相关的依赖版本:

    cd android && ./gradlew dependencies | grep kotlin
    

    如果发现版本不一致,就在android/build.gradle里强制统一版本:

    configurations.all {
        resolutionStrategy.force "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10"
    }
    

这些步骤我都在自己的项目里验证过,应该能解决大部分SDK 45下expo-updates的编译问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 13:57:29