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

React Native运行报错:路径下存在重复libfbjni.so文件

解决React Native中:app:mergeDebugNativeLibs报错(重复libfbjni.so)

问题现象

无代码改动的情况下,运行React Native Android应用时触发mergeDebugNativeLibs任务失败:

  • Windows端提示lib/arm64-v8a/libfbjni.so存在两个重复文件
  • Mac端提示lib/armeabi-v7a/libfbjni.so重复
    已尝试gradle clean、删除.gradle和build文件夹,问题未解决。

解决方案

方案1:添加打包规则优先选择第一个文件

在app/build.gradle的android块中配置打包规则,让Gradle遇到重复so文件时保留第一个:

android {
    // 保留原有配置
    packagingOptions {
        pickFirst 'lib/**/libfbjni.so'
    }
}

方案2:强制统一fbjni依赖版本

冲突源于不同依赖包引入了不同版本的fbjni,可在项目根目录配置文件中强制统一版本:

  • 旧版Gradle配置(根目录build.gradle):
allprojects {
    configurations.all {
        resolutionStrategy {
            // 版本号匹配报错中RN依赖的版本,示例为0.3.0
            force 'com.facebook.fbjni:fbjni:0.3.0'
        }
    }
}
  • 新版RN配置(根目录settings.gradle):
dependencyResolutionManagement {
    resolutions {
        force 'com.facebook.fbjni:fbjni:0.3.0'
    }
}

方案3:彻底清除缓存

执行更彻底的缓存重置操作:

  1. 清除Gradle构建缓存:./gradlew cleanBuildCache
  2. 重置node_modules:
    # Mac/Linux
    rm -rf node_modules && npm install
    # Windows
    rmdir /s/q node_modules && npm install
    
  3. 清除npm缓存:npm cache clean --force

验证

完成操作后,重新运行npx react-native run-android,确认任务执行成功。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 15:20:32