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

Android Studio同步Expo模块找不到:expo-modules-core项目如何解决

问题现象

执行yarn create expo-module命令按官方文档流程创建Expo模块后,在Android Studio中打开模块内的android目录执行Gradle同步,会抛出如下报错:

Project with path ':expo-modules-core' could not be found in root project 'android'

该问题的触发逻辑:

  • 模板生成的Gradle脚本默认通过project(":expo-modules-core")的方式声明依赖
  • expo-modules-core实际存放在项目的node_modules目录下,但默认生成的模板未配置该依赖的路径关联
  • 常规React Native原生插件的依赖配置方案不适用于该场景:常规RN插件会在Gradle中显式配置node_modules内React Native的maven仓库地址,通过maven坐标拉取依赖,参考配置如下:
repositories {
  maven {
    url("$rootDir/../../node_modules/react-native/android")
  }
}

dependencies {
  implementation "com.facebook.react:react-native:+" // From node_modules
}

但expo-modules-core包内不存在maven-metadata文件,无法通过上述maven仓库方式引用。

解决步骤

通过本地源码模块的方式引入expo-modules-core即可解决,具体配置如下:

  1. 打开android目录下的settings.gradle文件,添加expo-modules-core的本地模块映射,将node_modules中对应的源码目录注册为Gradle可识别的项目模块:
// 可根据自身模块的存放层级调整node_modules的相对路径,默认模板生成的目录层级对应如下配置
def nodeModules = new File(rootDir, "../../node_modules")

include ':expo-modules-core'
project(':expo-modules-core').projectDir = new File(nodeModules, "expo-modules-core/android")
  1. 保留模块级build.gradle文件中对expo-modules-core的项目依赖声明即可,无需修改为maven坐标形式:
dependencies {
    // 其余原有依赖保持原有配置不变
    implementation project(':expo-modules-core')
}

注意事项

  • 配置前先核对路径有效性:确认拼接后的expo-modules-core/android目录真实存在,若模块存放位置和默认模板层级不同,按需调整nodeModules的相对路径即可
  • 不要尝试通过配置maven仓库地址的方式引入expo-modules-core:该包为源码依赖的原生模块,本地node_modules中未存放可直接拉取的maven产物,仅支持本地项目模块的引入方式
  • 配置修改完成后,先在android目录下执行./gradlew clean清理旧构建缓存,再重新触发Gradle同步,避免缓存导致的同步失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 20:48:19