React Native项目运行Android报错及IncrementalTaskInputs弃用问题求助
问题:React Native 新项目运行Android报错
Task :app:processDebugResources FAILED 环境信息
- JDK版本:11.0.16.1
- Gradle版本:7.5.1
问题重现步骤
- 安装React Native后,执行命令
npx react-native init AwesomeProject创建全新项目(无任何自定义代码) - 运行
npx react-native run-android启动Android项目,触发报错 - 添加
--warning-mode all参数后,得到具体警告反馈
报错详情
IncrementalTaskInputs 已被弃用,计划在Gradle 8.0中移除。请在方法 'IncrementalTask.taskAction$gradle_core' 中使用 'org.gradle.work.InputChanges' 替代。该警告来自文件路径:C:\Windows\System32\AwesomeProject\node_modules\react-native\react.gradle:395(可使用 --stacktrace 获取完整栈追踪)
有效修复方案
方案1:升级React Native到兼容Gradle 7.5.1的版本
旧版React Native的gradle脚本未适配Gradle 7.x的API变更,导致出现该弃用警告。建议升级到React Native 0.70+版本(该版本已针对Gradle 7.x做了适配):
- 执行命令
npm install react-native@latest --save - 同步项目依赖后,重新运行
npx react-native run-android
方案2:手动修改react.gradle文件(临时修复)
如果暂时不想升级RN版本,可以直接修改node_modules中的react.gradle文件,替换弃用的API:
- 打开路径
node_modules/react-native/react.gradle - 找到第395行附近的代码块,将使用
IncrementalTaskInputs的部分替换为InputChanges:- 原代码类似:
taskAction { IncrementalTaskInputs inputs -> ... } - 修改为:
taskAction { InputChanges inputs -> ... }
- 原代码类似:
- 保存文件后,重新运行
npx react-native run-android
注意:这种修改会在重新安装依赖后失效,建议配合
patch-package工具保存补丁,避免每次安装依赖都重复修改。
方案3:调整项目Gradle版本
尝试将Gradle版本降级到7.0.x(该版本尚未完全移除IncrementalTaskInputs的支持):
- 打开项目根目录下的
gradle/wrapper/gradle-wrapper.properties - 修改
distributionUrl为:distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip - 同步项目后重新运行构建命令
内容的提问来源于stack exchange,提问作者Ali Dhan
相关产品推荐
相关产品推荐

