【问题标题】:Execution fail for task ':app:transformClassesWithJarMergingForDebug'任务 ':app:transformClassesWithJarMergingForDebug' 执行失败
【发布时间】:2017-09-12 22:10:57
【问题描述】:

在我的应用程序中,我使用 graphhopper 和 buttonbar。这个生动的解决方案是 graphhopper 依赖项之一。

错误:任务 ':app:transformClassesWithJarMergingForDebug' 执行失败。

com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:com/vividsolutions/jts/algorithm/Angle.class

这是我的 build.gradle

android {

    compileSdkVersion 25

    buildToolsVersion "25.0.0"

    defaultConfig {

        applicationId "com.segunfamisa.sample.bottomnav"

        minSdkVersion 14

        targetSdkVersion 25

        versionCode 1

        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

        multiDexEnabled=true
    }
    buildTypes {

        release {

            minifyEnabled false

            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'

        }

        lintOptions {

            /* CGIARProvider refers to java.awt
             * Helper7 refers to java.lang.management
             * HeightTile refers to javax.imageio and java.awt
             * OSMElement refers to javax.xml.stream
             */
            disable 'InvalidPackage'
        }
    }

}

dependencies {

    compile fileTree(dir: 'libs', include: ['*.jar'])


    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })

    compile 'com.android.support:design:25.0.0'


    compile 'org.mapsforge:vtm:0.7.0'
    compile 'org.mapsforge:vtm-android:0.7.0'
    compile('com.graphhopper:graphhopper-core:0.9-SNAPSHOT') {
        exclude group: 'com.google.protobuf', module: 'protobuf-java'
        exclude group: 'org.openstreetmap.osmosis', module: 'osmosis-osm-binary'
        exclude group: 'org.apache.xmlgraphics', module: 'xmlgraphics-commons'
    }
    compile 'org.mapsforge:vtm-android:0.7.0:natives-armeabi'
    compile 'org.mapsforge:vtm-android:0.7.0:natives-armeabi-v7a'
    compile 'org.mapsforge:vtm-android:0.7.0:natives-x86'
    compile 'org.mapsforge:vtm-jts:0.7.0'
    compile 'org.mapsforge:vtm-themes:0.7.0'
    compile 'com.caverock:androidsvg:1.2.2-beta-1'
    compile 'com.vividsolutions:jts-core:1.14.0'
    compile 'org.slf4j:slf4j-api:1.7.21'
    compile 'org.slf4j:slf4j-android:1.7.21'
}

【问题讨论】:

  • 为什么要加 compile 'com.vividsolutions:jts-core:1.14.0' ,不会是在graphhopper里加的吧。
  • 你添加了两倍的 com/vividsolutions/jts/algorithm/Angle.class

标签: java android android-studio build.gradle mapsforge


【解决方案1】:

您正在添加这样的库
(一种)。 编译文件('libs/YOUR_LIBRARY.jar')
并且此库包已在您的代码中可用。
像这样评论它或删除这一行
//compile files('libs/YOUR_LIBRARY.jar')

如何知道项目中库的重复副本:
解压缩您的“YOUR_LIBRARY.jar”并在您的代码中看到相同的类名。

【讨论】:

    【解决方案2】:

    将此添加到您的 build.gradle 中:

    configurations {
        all*.exclude group: 'com.vividsolutions', module: 'jts-core'
    }
    

    它对我有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-07
      相关资源
      最近更新 更多