2017-10-20 97 views
0

我要生成一個apk文件了我的項目,但我不斷收到此錯誤而產生的簽署APK:錯誤而在Android的產生簽署過的APK工作室

Execution failed for task ':app:transformClassesWithJarMergingForRelease'. com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/print/PrintHelper$PrintHelperStubImpl.class

自6我搜索幾小時現在解決方案,我已經嘗試幾乎所有,但我無法修復它。有誰知道如何解決這一問題?

這是我的gradle產出:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "26.0.2" 
    dexOptions { 
    javaMaxHeapSize "4g" 
} 

defaultConfig { 
    applicationId "com.pake.lightbulb" 
    minSdkVersion 14 
    targetSdkVersion 26 
    multiDexEnabled true 

    ndk { 
     moduleName "player_shared" 
    } 
} 

buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 
     'proguard-rules.txt' 
    } 
} 
sourceSets.main 
     { 
      jni.srcDirs=[] 
     } 

configurations { 
    all*.exclude group: 'com.android.support', module: 'support-v4' 
    all*.exclude group: 'com.android.support', module: 'support-annotations' 
} 
} 

dependencies { 
    compile('com.google.android.gms:play-services:+') 
    compile files('libs/dagger-1.2.2.jar') 
    compile files('libs/javax.inject-1.jar') 
    compile files('libs/nineoldandroids-2.4.0.jar') 
} 
+0

你偶爾使用壁畫?您可能需要根據這張票到您的庫更新到最新版本:https://github.com/facebook/fresco/issues/1493 –

+0

你依賴的人都有不同的版本支持V4的,它是相互矛盾的。確保所有的依賴性都使用同一版本 – Jon

+2

發表您的'gradle' – pleft

回答

0

最有可能support-v4庫通過play-services依賴性得到也包括在內。要排除它改變你的gradle到的相關依賴行:

compile('com.google.android.gms:play-services:+') 
{ 
    exclude module: 'support-v4' 
} 

爲了更排查,並檢查是否有其他的重複和衝突,檢查gradle產出的依賴關係樹命令:

gradle -q dependencies --configuration compile

+0

我現在改變了我的gradle的那一行,但是我一直得到同樣的錯誤。檢查gradle的依賴樹命令是什麼意思? – Pake

+0

顯示項目使用的依賴項,根據您的情況發現任何衝突或重複項很有用。你可以在這裏閱讀更多:https://docs.gradle.org/current/userguide/userguide_single.html#sec:listing_dependencies – pleft

+0

我黯然不明白該怎麼做。我對Android Studio一無所知。我剛剛導入了我的應用程序,現在想要創建一個apk文件。 – Pake