构建失败,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 冲突=].请自行折射ListFragment
class。那应该可以解决错误。
所以您的 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'
。
感谢您的宝贵时间:) 我在 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 冲突=].请自行折射ListFragment
class。那应该可以解决错误。
所以您的 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'
。