构建失败,Information:Gradle 个任务 [:app:assembleLegacyRelease]

BUILD FAILED , Information:Gradle tasks [:app:assembleLegacyRelease]

感谢您的宝贵时间:) 我在 android studio

上构建游戏后收到此消息

信息:Gradle任务[:app:assembleLegacyRelease]

  Error:Execution failed for task ':app:transformClassesWithJarMergingForLegacyRelease'.
    > com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/app/ListFragment.class

信息:构建失败

我使用的是旧版本,所以我不知道如何解决这个问题来获取我的 apk 文件

这是 gradle :

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.0"
    dexOptions{
        javaMaxHeapSize "4g"
    }
    defaultConfig {
        applicationId "com.companyname.gamename"
        minSdkVersion 9
        targetSdkVersion 25
        multiDexEnabled true
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        vectorDrawables.useSupportLibrary = true
        ndk {
            moduleName "player_shared"
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    productFlavors {
        legacy {
            minSdkVersion 9
            versionCode 901  // Min API level 9, v01
        }
        current {
            minSdkVersion 14
            versionCode 1401  // Min API level 14, v01
        }
    }

dependencies {
    legacyCompile 'com.google.android.gms:play-services:10.0.0'
    currentCompile 'com.google.android.gms:play-services:10.2.0'
    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:appcompat-v7:25.0.0'
    compile 'com.android.support:design:25.0.0'
    compile 'com.android.support:support-vector-drawable:25.0.0'
    testCompile 'junit:junit:4.12'
}
    sourceSets {
        main {
            jni.srcDirs = []
        }
    }
}

谢谢你的帮助,这是我的第一场比赛

您的项目中有 ListFragment class,这与 Android 预定义片段 [=16] 提供的 ListFragment class 冲突=].请自行折射ListFragmentclass。那应该可以解决错误。

所以您的 libs 文件夹中已经有四个 jar 文件,其中还包括支持 v4 的 jar。据我从您的评论中得知,这是您在 libs 文件夹中的 jar 文件。

  • 匕首 1.2.2.jar
  • javax.inject-1.jar
  • nineoldandroids-2.4.0.jar
  • 支持 v4-19.0.1.jar

错误消息清楚地表明存在支持 v4 jar 的重复条目。

com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/app/ListFragment.class

因此您需要从您的 libs 文件夹中删除 support v4-19.0.1.jar,因为您的 build.gradle 文件中已经包含一个支持 v7,它具有不同的版本。因此,您可以考虑在 build.gradle 文件中的 dependencies 部分之前添加此部分。

configurations.all {
    resolutionStrategy {
        force 'com.android.support:design:25.3.1'
        force 'com.android.support:support-v4:25.3.1'
        force 'com.android.support:appcompat-v7:25.3.1'
    }
}

您也可以考虑从 dependencies 中删除 compile 'com.android.support:appcompat-v7:25.0.0'