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

搭建Detox e2e测试框架执行detox build时出现androidx.appcompat依赖冲突

问题本质

这是Android项目典型的多依赖版本冲突问题,项目中引入的React Native本体、各类RN原生插件、Detox框架对androidx.appcompat:appcompat包的版本要求不匹配,同时debugRuntimeClasspath对该包设置了1.1.0-rc01的严格版本约束,其他依赖链的版本要求无法满足该约束,导致依赖解析失败构建卡住。

修复步骤
  • 全局强制统一依赖版本
    在安卓项目根目录的build.gradle文件的allprojects代码块中添加版本强制配置,选择所有依赖都兼容的正式版1.1.0,既满足Detox依赖的material 1.2.1的要求,也在OneSignal的兼容范围[1.0.0, 1.3.99]内:
allprojects {
    configurations.all {
        resolutionStrategy {
            force 'androidx.appcompat:appcompat:1.1.0'
            // 可同步统一其他易冲突的依赖,避免后续报错
            force 'com.google.android.material:material:1.2.1'
        }
    }
}
  • 移除冗余约束
    检查app模块下的build.gradle文件,确认是否手动设置了androidx.appcompat:appcompat的严格版本规则,如有可以删除,使用上方全局强制版本即可。
  • 清理缓存重新构建
    修改完成后依次执行以下命令清理缓存后再执行detox构建:
  1. 清理安卓构建缓存:cd android && ./gradlew clean
  2. 清空项目依赖缓存重装:watchman watch-del-all && rm -rf node_modules && npm install
  3. 重新执行detox构建命令:detox build --configuration 你的配置名
备选方案

如果上述方案仍报错,可将强制的androidx.appcompat:appcompat版本替换为1.1.0-rc01,匹配当前的严格约束要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 12:36:02