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

构建Expo Bare Flow安卓应用时遭遇expo-modules-core CMake配置错误

解决Expo Bare Flow安卓构建时的:expo-modules-core:configureCMakeDebug[arm64-v8a]错误及StackOverflowError

1. 调整JVM堆内存参数

java.lang.StackOverflowError多因Gradle构建时JVM内存分配不足引发,修改内存配置:

  • 打开项目根目录下的android/gradle.properties
  • 修改org.gradle.jvmargs参数,示例:
    org.gradle.jvmargs=-Xmx4096m -Xss2m -XX:MaxMetaspaceSize=512m
    
  • 保存后重新执行构建命令

2. 匹配CMake版本

CXX1429错误通常和CMake版本不兼容有关,统一使用Expo官方推荐版本:

  • 打开Android Studio的SDK Manager,切换到SDK Tools标签,安装3.22.1版本的CMake
  • 在android/build.gradle中指定CMake版本:
    buildscript {
        ext {
            cmakeVersion = "3.22.1"
        }
        // 其他原有配置...
    }
    
  • 在android/app/build.gradle的externalNativeBuild块中绑定版本:
    android {
        // 其他原有配置...
        externalNativeBuild {
            cmake {
                path "CMakeLists.txt"
                version project.ext.cmakeVersion
            }
        }
    }
    

3. 彻底清理缓存后重建

缓存残留可能导致异常,执行以下命令彻底清理:

# 清理Gradle本地缓存
./gradlew clean
rm -rf ~/.gradle/caches

# 清理Node依赖和Expo预构建文件
rm -rf node_modules
yarn install
npx expo prebuild --clean

# 重新构建安卓项目
yarn android

4. 确认Java版本兼容性

Expo模块对Java版本有明确要求,推荐使用Java 11:

  • 执行java -version检查当前版本,若不符则切换
  • 可通过Android Studio的File > Project Structure > SDK Location配置项目使用的JDK版本

5. 降级Expo Modules Core版本

如果是新版本expo-modules-core引入的问题,尝试降级到稳定版本:

  • 修改package.json中的依赖版本,例如:
    "expo-modules-core": "~1.11.0"
    
  • 重新安装依赖并预构建:
    yarn install
    npx expo prebuild --clean
    yarn android
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 23:25:14