Expo 49+TypeScript项目Android构建失败问题求助
EAS Android构建Gradle错误解决方案
针对expo-error-recovery的classifier属性错误
这个问题源于Gradle 7+对任务属性的变更,旧版expo-error-recovery未适配。按以下步骤解决:
- 升级依赖:在项目根目录终端执行
npm install expo-error-recovery@latest,确保依赖版本适配Expo 49。 - 若升级后仍报错,用
patch-package打补丁:- 安装补丁工具:
npm install patch-package --save-dev - 打开
node_modules/expo-error-recovery/android/build.gradle,找到第40行的classifier = 'sources',替换为archiveClassifier = 'sources' - 生成补丁文件:
npx patch-package expo-error-recovery - 将生成的
patches/目录提交到仓库,后续构建会自动应用补丁
- 安装补丁工具:
针对未指定compileSdkVersion错误
Expo 49默认对应compileSdkVersion 33,按以下方式配置:
- 方法1:修改
android/build.gradle
在buildscript的ext块中添加或明确配置:buildscript { ext { compileSdkVersion = 33 targetSdkVersion = 33 minSdkVersion = 21 } // 其余原有内容保留 } - 方法2:在
app.config.ts(或app.json)中配置export default { expo: { // 其他项目配置 android: { compileSdkVersion: 33, targetSdkVersion: 33, } } } - 执行
eas build:configure同步配置后,重新运行eas build --platform android
内容的提问来源于stack exchange,提问作者Begginer
相关产品推荐
相关产品推荐

