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

React Native集成react-native-msal后Android端构建失败报错

React Native集成react-native-msal Android构建失败修复方案

核心问题定位

你看到的*"Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0"*只是警告信息,不是导致构建失败的根因。真正阻断编译的是日志里的9处cannot find symbol BuildConfig错误,问题来自两点:

  • 主工程和react-native-msal依赖使用的Android Gradle Plugin(AGP)版本不一致
  • 高版本AGP默认关闭了BuildConfig类自动生成,项目模板和依赖没有适配这个配置变更

修复步骤

  • 统一AGP版本
    1. 打开项目根路径下的android/build.gradle文件,记录主工程当前使用的AGP版本号
    2. 打开node_modules/react-native-msal/android/build.gradle文件,将依赖中声明的com.android.tools.build:gradle版本号修改为和主工程完全一致的数值,移除版本号中的+号通配符。如果怕后续重新安装依赖覆盖这个修改,可以用patch-package工具给该依赖打补丁永久保留配置。
  • 开启BuildConfig自动生成
    打开android/app/build.gradle文件,在android {}配置块内添加如下配置:
    buildFeatures {
        buildConfig = true
    }
    
  • 清理缓存重新构建
    在项目根目录执行以下命令清理旧构建产物后重新编译:
    cd android
    ./gradlew clean
    cd ..
    npx react-native run-android
    

其他警告说明

  • 日志里的SDK XML版本不兼容警告,是本地Android SDK Command-line Tools和Android Studio版本不匹配导致,打开SDK Manager更新命令行工具到最新版即可消除,不影响正常构建
  • Gradle废弃API警告不影响当前开发调试,需要定位具体来源时可以执行./gradlew app:assembleDebug --warning-mode all查看详细的废弃调用栈

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 23:09:15