Previously I was my project was working on mappls_gl package but it doen't provide the latest feature like mapmyindia_gl instead both are official and very very similar to each and every thing, but when I'm shifting the project or creating new project with mapmyindia_gl, I'm getting this error Duplicate class com.mapmyindia.sdk.gestures.AndroidGesturesManager found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)

This is my error log

PS C:\Mrx\projects\raptee_energy\MapMyIndiaTrial\map_my_india_trial> flutter run 
Launching lib\main.dart on RMX3741 in debug mode...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugDuplicateClasses'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
   > Duplicate class com.mapmyindia.sdk.gestures.AndroidGesturesManager found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.AndroidGesturesManager$GestureType found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.BaseGesture found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.BuildConfig found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.Constants found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MoveDistancesObject found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MoveGestureDetector found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MoveGestureDetector$OnMoveGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MoveGestureDetector$SimpleOnMoveGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MultiFingerDistancesObject found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MultiFingerGesture found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MultiFingerTapGestureDetector found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.MultiFingerTapGestureDetector$OnMultiFingerTapGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.PermittedActionsGuard found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.PointerDistancePair found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.ProgressiveGesture found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.RotateGestureDetector found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.RotateGestureDetector$OnRotateGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.RotateGestureDetector$SimpleOnRotateGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.ShoveGestureDetector found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.ShoveGestureDetector$OnShoveGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.ShoveGestureDetector$SimpleOnShoveGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.SidewaysShoveGestureDetector found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.SidewaysShoveGestureDetector$OnSidewaysShoveGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.SidewaysShoveGestureDetector$SimpleOnSidewaysShoveGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardGestureDetector found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardGestureDetector$1 found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardGestureDetector$SimpleStandardOnGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardGestureDetector$StandardOnGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardScaleGestureDetector found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardScaleGestureDetector$1 found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardScaleGestureDetector$SimpleStandardOnScaleGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.StandardScaleGestureDetector$StandardOnScaleGestureListener found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)
     Duplicate class com.mapmyindia.sdk.gestures.Utils found in modules jetified-mapmyindia-android-gestures-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures:0.0.1) and jetified-mapmyindia-android-gestures-flutter-0.0.1-runtime (com.mapmyindia.sdk:mapmyindia-android-gestures-flutter:0.0.1)

     Go to the documentation to learn how to <a href="d.android.com/r/tools/classpath-sync-errors">Fix dependency resolution errors</a>.

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 33s
Running Gradle task 'assembleDebug'...                             34.1s
Exception: Gradle task assembleDebug failed with exit code 1

This is my build.gradle for project

buildscript {
    ext.kotlin_version = '1.9.0'
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

tasks.register("clean", Delete) {
    delete rootProject.buildDir
}

This is app lever gradle

plugins {
    id "com.android.application"
    id "kotlin-android"
    id "dev.flutter.flutter-gradle-plugin"
}

def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
    localPropertiesFile.withReader('UTF-8') { reader ->
        localProperties.load(reader)
    }
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
    flutterVersionCode = '1'
}

def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
    flutterVersionName = '1.0'
}

android {
    namespace "com.example.map_my_india_trial"
    compileSdkVersion flutter.compileSdkVersion
    ndkVersion flutter.ndkVersion

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    kotlinOptions {
        jvmTarget = '1.8'
    }

    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }

    defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId "com.example.map_my_india_trial"
        // You can update the following values to match your application needs.
        // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
        minSdkVersion flutter.minSdkVersion
        targetSdkVersion flutter.targetSdkVersion
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }

    buildTypes {
        release {
            // TODO: Add your own signing config for the release build.
            // Signing with the debug keys for now, so `flutter run --release` works.
            signingConfig signingConfigs.debug
        }
    }
}

flutter {
    source '../..'
}

dependencies {}

This is my code for MapMyIndia widget

import 'package:flutter/material.dart';
import 'package:mapmyindia_gl/mapmyindia_gl.dart';

class MyHomeScreen extends StatefulWidget {
  const MyHomeScreen({super.key});

  @override
  State<MyHomeScreen> createState() => _MyHomeScreenState();
}

class _MyHomeScreenState extends State<MyHomeScreen> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: MapmyIndiaMap(
        initialCameraPosition: CameraPosition(
          target: LatLng(28.6139, 77.2090), // Set the initial map position
          zoom: 14.0,
        ),
        onMapCreated: (map) {
          // Callback when the map is created
        },
      ),
    );
  }
}

This is my pubspec.yaml

name: map_my_india_trial
description: "A new Flutter project."


publish_to: 'none' 













version: 1.0.0+1

environment:
  sdk: '>=3.2.4 <4.0.0'







dependencies:
  flutter:
    sdk: flutter


  
  
  cupertino_icons: ^1.0.2
  mapmyindia_gl: ^0.3.2
  mapmyindia_place_widget: ^0.2.0
  location: ^5.0.3

dev_dependencies:
  flutter_test:
    sdk: flutter

  
  
  
  
  
  flutter_lints: ^2.0.0





flutter:

  
  
  
  uses-material-design: true

  
  
  
  

  
  

  
  

  
  
  
  
  
  
  
  
  
  


It should work fine without giving these error.

1

There are 1 best solutions below

0
Hmd On

Faced same issue of Duplicate classes. Instead of using 'package:mapmyindia_gl/mapmyindia_gl.dart' try using 'package:mappls_gl/mappls_gl.dart'.

  • First add 'mappls_gl: ^1.0.1' to your pubsec.yaml.
  • Then import it as 'package:mappls_gl/mappls_gl.dart' after removing
    'package:mapmyindia_gl/mapmyindia_gl.dart'.
  • Inside body tag of Widget change MapmyIndiaMap(..) to MapplsMap(..)
  • You might also need to change 'MapMyIndiaAccountManager.setMapSDKKey(..)' to 'MapplsAccountManager.setMapSDKKey' when setting api/sdk keys.