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

添加Mapbox GL SDK后Flutter项目出现Gradle依赖冲突求助

解决Flutter项目中Mapbox Maps Android SDK 10.12.1的依赖冲突问题

问题描述

添加Mapbox Maps Android SDK(版本10.12.1)后,Gradle构建失败,核心错误为重复类冲突:com.mapbox.android.core.location和com.mapbox.android.core.permissions下的多个类,同时存在于jetified-common-23.4.0-runtime和jetified-mapbox-android-core-5.0.0-runtime两个模块中。

编译阶段存在未检查操作、已弃用API的警告,但导致构建失败的核心原因是重复类冲突。

解决方案

问题源于Mapbox SDK依赖传递时重复引入了包含相同类的模块,通过Gradle依赖排除规则即可解决:

步骤1:修改app/build.gradle的依赖配置

在dependencies块中,给Mapbox的依赖添加排除规则,移除重复的mapbox-android-core模块:

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation platform('com.google.firebase:firebase-bom:31.3.0')
    implementation 'com.google.firebase:firebase-analytics-ktx'
    implementation 'com.android.support:multidex:1.0.3'
    // 排除重复的mapbox-android-core依赖
    implementation('com.mapbox.maps:android:10.12.1') {
        exclude group: 'com.mapbox.mapboxsdk', module: 'mapbox-android-core'
    }
}

步骤2:清理并重新构建项目

执行以下操作确保依赖生效:

  • 运行 flutter clean 清理项目缓存
  • 运行 flutter pub get 获取最新依赖
  • 执行 flutter run 触发重新构建

原理说明

Mapbox Maps SDK 10.x版本已将核心位置相关类迁移至com.mapbox.common模块,但旧的mapbox-android-core模块仍保留了这些类,导致依赖传递时重复引入。通过排除mapbox-android-core模块,项目仅使用com.mapbox.common中的类,即可解决重复类冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 21:17:21