2016-06-26 9 views
0

私はアンドロイドプロジェクトを構築しようとしていました。私がプロジェクトを再構築するときには、何の警告もありません。しかし、私が署名したAPKを生成しようとすると、それは次のようなエラーが表示されます。署名付きAPKの生成に失敗しました:java.util.zip.ZipException:重複したエントリ

Error:Execution failed for task ':app:packageAllReleaseClassesForMultiDex'. java.util.zip.ZipException: duplicate entry: org/apache/http/ConnectionClosedException.class

私はConnectionClosedException.classが私の依存関係で重複しているけど、私はそれを見つけることができません。どのような体はこの問題に対処する方法を知っていますか? build.gradle内の依存関係は以下の通りです:

dependencies { 
compile 'com.android.support:multidex:1.0.0' 
compile 'com.google.android.gms:play-services:9.0.2' 
compile 'com.android.support:appcompat-v7:24.0.0' 
compile 'org.apache.httpcomponents:httpcore:4.4.5' 
compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2' 
compile 'com.android.support:support-v13:24.0.0' 
compile files('libs/httpmime-4.2.jar') 
compile files('libs/android-support-v4.jar')} 

おかげでたくさん〜

2016年6月29日 私は依存関係を調整した後:

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile 'com.google.android.gms:play-services-location:9.0.2' 
compile 'com.android.support:multidex:1.0.1' 
compile 'com.android.support:appcompat-v7:24.0.0' 
compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2' 
compile 'org.apache.httpcomponents:httpcore:4.4.5' 
compile 'org.apache.httpcomponents:httpmime:4.5.2' 
compile 'com.android.support:support-v4:23.0.0'} 

をエラーは次のようになります。

Error:Execution failed for task ':app:transformClassesWithJarMergingForRelease'. >com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: org/apache/http/entity/mime/HttpMultipart$1.class 

どのような依存ライブラリが他に?

+0

compile files('libs/httpmime-4.2.jar') 

を置き換えますv4 jarファイルが必要です... appcompat-v7にはすでにそのファイルが含まれています –

+0

さらに、私はあなたがプレイサービスの依存関係全体を必要とするのは間違いありません。実際に必要なものを選択的にコンパイルする方法については、ここをクリックしてください。これにより、アプリの作成に要する時間と最終的なアプリのサイズが削減されます。 https://developers.google.com/android/guides/setup#split –

答えて

0

常に私は推測しなければならないとしたら、それはまた、あなたがいない、OSGIまたはhttpmimeパッケージにあります重複を防ぐために、Mavenの依存関係を使用しよう、そう

compile 'org.apache.httpcomponents:httpmime:4.5.2' 
関連する問題