React Native构建APK失败:app:lintVitalRelease任务报错
解决React Native构建APK时Task :app:lintVitalRelease失败的问题
问题根源
- JCenter仓库已停止服务,导致请求
https://jcenter.bintray.com/com/facebook/react/react-native/maven-metadata.xml超时,无法解析依赖版本 @react-native-community/checkbox@0.5.9依赖com.facebook.react:react-native:+这种动态版本号,在仓库不可用时会触发版本解析失败
解决方案
1. 替换废弃的JCenter仓库
打开android/build.gradle,将所有jcenter()仓库替换为mavenCentral(),同时保留谷歌仓库以确保RN依赖正常拉取:
buildscript { repositories { google() mavenCentral() // 替换jcenter } // 其他buildscript配置... } allprojects { repositories { mavenLocal() maven { url 'https://maven.google.com' } mavenCentral() // 替换jcenter maven { url "$rootDir/../node_modules/react-native/android" } maven { url "$rootDir/../node_modules/jsc-android/dist" } } }
2. 强制锁定React Native依赖版本
在android/build.gradle的allprojects块中添加版本锁定策略,避免动态版本解析失败:
allprojects { repositories { // 仓库配置... } configurations.all { resolutionStrategy { // 强制使用你项目中的RN版本0.66.1 force 'com.facebook.react:react-native:0.66.1' } } }
3. 升级Checkbox组件(可选,更彻底的解决方案)
@react-native-community/checkbox@0.5.9版本较老,且该组件已迁移到官方维护的@react-native/checkbox包,建议升级以适配RN 0.66.1:
npm uninstall @react-native-community/checkbox npm install @react-native/checkbox
4. 清理缓存重新构建
执行以下命令清理构建缓存,避免缓存导致的残留问题:
cd android ./gradlew clean cd .. # 重新执行你的APK构建命令,例如: npm run build:android
内容的提问来源于stack exchange,提问作者Md Javed Akhtar
相关产品推荐
相关产品推荐

