React Native通过EAS构建Android APK时Gradle依赖异常求助
解决eas build -p android构建时react-native-permission的Gradle依赖错误
问题原因
错误日志显示react-native-permission的Android构建脚本(build.gradle第14行)中使用了已被Gradle废弃的compile()依赖声明方法。Gradle 7及以上版本已不再支持compile,需替换为implementation或api。你重新安装包后问题未解决,说明当前安装的react-native-permission版本仍未修复该兼容性问题。
解决方案
1. 升级react-native-permission到最新兼容版本
首先检查当前安装的包版本:
yarn list react-native-permission
如果版本较旧,直接升级到最新稳定版:
yarn add react-native-permission@latest
升级后重新执行构建命令:
eas build -p android
2. 用patch-package手动修复Gradle脚本(升级无效时使用)
如果升级后问题依旧,通过补丁工具修改第三方包的代码:
- 安装patch-package开发依赖:
yarn add patch-package --dev - 打开
node_modules/react-native-permission/android/build.gradle,找到第14行的compile语句,替换为implementation:// 替换前 compile 'com.facebook.react:react-native:0.20.1' // 替换后 implementation 'com.facebook.react:react-native:0.20.1' - 生成补丁文件:
npx patch-package react-native-permission - 将项目根目录生成的
patches文件夹提交到版本控制,后续安装依赖时会自动应用该补丁。
3. 验证项目Gradle版本兼容性
检查项目Android目录下的Gradle版本,确保使用的Gradle版本与react-native-permission兼容:
- 打开
android/gradle/wrapper/gradle-wrapper.properties,确认distributionUrl指向的Gradle版本为7.0及以上(例如:distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip)
内容的提问来源于stack exchange,提问作者Proger228
相关产品推荐
相关产品推荐

