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

Expo项目构建报错:JvmTargetValidationMode枚举异常及编译问题求助

问题原因分析
  1. Kotlin与Gradle版本不兼容:报错中的No enum constant org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.JvmTargetValidationMode.WARN¦NG,核心问题是当前使用的Kotlin Gradle插件版本中不存在该枚举值——大概率是配置里的枚举值出现拼写/编码错误,或是Kotlin版本过低不支持该枚举项。JvmTargetValidationMode是Kotlin 1.8.x版本引入的配置项,若项目Kotlin版本低于此,或与Gradle版本不匹配,就会触发该错误。
  2. Expo模块构建配置冲突:空项目出现未找到名为'debugAndroidTest'的KotlinJvmAndroidCompilation,说明expo-modules-core的构建脚本与当前项目的Android编译单元配置不匹配,大概率是Expo CLI版本与项目依赖的expo-modules-core版本不一致导致的。
修复方案
  • 统一Kotlin与Gradle版本
    打开项目android/build.gradle文件,修改Kotlin版本为Expo兼容的稳定版(如Expo 49+推荐1.8.20):

    buildscript {
        ext {
            kotlin_version = "1.8.20"
        }
        repositories {
            google()
            mavenCentral()
        }
        // ...保留其他原有配置
    }
    

    同时检查gradle/wrapper/gradle-wrapper.properties中的Gradle版本,确保与Kotlin版本兼容(Kotlin 1.8.20对应Gradle 8.0及以上):

    distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
    
  • 修正JvmTargetValidationMode配置
    排查项目中所有Gradle配置文件(android/build.gradle、android/app/build.gradle),若存在手动配置jvmTargetValidationMode的代码,检查是否有拼写/编码错误(比如错误的WARN¦NG),将其修正为合法枚举值WARNING或ERROR;若不需要该配置,可直接删除相关代码。

  • 同步Expo依赖版本
    更新全局Expo CLI至最新稳定版:

    npm install -g expo-cli
    

    进入项目目录,执行依赖修复命令,自动对齐所有Expo相关依赖版本:

    npx expo install --fix
    
  • 重置Android构建环境
    删除Android构建缓存与生成文件:

    rm -rf android/.gradle android/build android/app/build
    

    重新生成Android项目配置并构建:

    npx expo run:android --clean
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 18:05:17