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

RN项目加原生Android代码后Release构建遇Glide类重复Dex合并错误

React Native Android Release构建mergeDex错误(Glide重复类)解决办法

问题核心

报错显示com.bumptech.glide.GeneratedRequestManagerFactory类被重复定义,分别来自项目编译产物和第三方依赖的dex文件。Debug模式正常是因为Debug构建对重复类的检查更宽松,而Release模式的代码合并逻辑会严格校验,导致冲突暴露。

具体解决步骤

1. 定位重复依赖来源

执行gradle命令查看完整依赖树,找出哪个第三方库(比如React Native的图片相关库)自带了Glide的相关类:

./gradlew app:dependencies

搜索com.github.bumptech.glide,确认除了你手动引入的之外,是否有其他依赖间接引入了相同或不同版本的Glide。

2. 排除冲突的依赖

如果发现某个库自带了Glide,在app/build.gradle中排除该库的Glide依赖,示例:

// 假设react-native-fast-image引入了重复Glide
implementation(project(':react-native-fast-image')) {
    exclude group: 'com.github.bumptech.glide'
}

3. 优化Glide注解处理器配置

你自定义了AppGlideModule,确保注解处理器只生成一份辅助类:

android {
    defaultConfig {
        multiDexEnabled true // 确认multidex已开启
    }
    buildTypes {
        release {
            javaCompileOptions {
                annotationProcessorOptions {
                    arguments = [
                        "android.enableSeparateAnnotationProcessing": "true"
                    ]
                }
            }
        }
    }
}

同时检查项目中是否存在多个@GlideModule注解的类,确保只有你写的GlideAppModule这一个。

4. 清理构建缓存

缓存残留可能导致重复类问题,执行以下命令清理后重新构建:

./gradlew clean
rm -rf android/app/build
rm -rf ~/.gradle/caches

5. 升级Glide版本

你当前使用的Glide 4.10.0版本较旧,升级到最新稳定版(如4.16.0)可以修复部分已知的依赖冲突问题:

implementation 'com.github.bumptech.glide:glide:4.16.0'
kapt 'com.github.bumptech.glide:compiler:4.16.0'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 17:10:20