2つのjarファイルを置くと、このエラー_Duplicate files during packaging of APK app-debug-unaligned.apk
_が表示されました。
_httpclient-4.3.5.jar
_
_httpmime-4.3.5.jar
_
_Sync with Gradle
_およびlibs
の後のRun
フォルダーに。
ユーザー1のjarファイル-_httpmime-4.3.5.jar
_の場合、このエラーは発生しません。
このエラーを回避する方法を教えてください。また、上記の2つのjarファイルを使用することもできます。
おかげで、
p/s:Android Studioバージョン0.8.6を使用します。
_Error Detail
_
エラー:APKのパッケージ化中にファイルが重複しています...\app\build\outputs\apk\app-debug-unaligned.apkアーカイブ内のパス:META-INF/DEPENDENCIES Origin 1:...\app\libs\httpclient-4.3 .5.jar Origin 2:...\app\libs\httpmime-4.3.5.jar
_build.gradle
_
_Android {
compileSdkVersion 20
buildToolsVersion '20.0.0'
defaultConfig {
applicationId 'com.app'
minSdkVersion 9
targetSdkVersion 20
versionCode 1
versionName '1.0'
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
packagingOptions {
exclude 'META-INF/LICENSE.txt'
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.Android.support:support-v4:20.0.0'
compile 'com.Android.support:appcompat-v7:20.0.0'
compile 'com.google.Android.gms:play-services:5.2.08'
compile 'com.viewpagerindicator:library:2.4.1@aar'
compile 'de.hdodenhof:circleimageview:1.2.0'
compile files('libs/httpmime-4.3.5.jar')
}
_
UPDATE
Maven Linkを使用するようcompile files('libs/httpmime-4.3.5.jar')
から変更しました。 2つのMavenリンクをまとめた後、同じエラーが再び発生しました:
_ compile 'org.Apache.httpcomponents:httpmime:4.4-alpha1'
compile 'org.Apache.httpcomponents:httpcore:4.4-alpha1'
_
これは警告です
警告:依存関係org.Apache.httpcomponents:httpclient:4.4-alpha1は、Androidが提供する内部バージョンと競合する可能性があるため、デバッグでは無視されます。問題が発生した場合は、jarjarで再パッケージしてクラスパッケージを変更してください
警告:依存関係org.Apache.httpcomponents:httpclient:4.4-alpha1は、Androidが提供する内部バージョンと競合する可能性があるため、リリースでは無視されます。問題が発生した場合は、jarで再パッケージしてクラスパッケージを変更してください
修正してください。
[〜#〜] soulition [〜#〜]これらの行を追加することで_Duplicate files
_エラーが修正されるので、良い答えがわかりました。
_packagingOptions {
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
}
_
compile files('libs/httpmime-4.3.5.jar')
をこのコンパイル_'org.Apache.httpcomponents:httpmime:4.3.5'
_に置き換えることができます。
また、依存関係を複製していますcompile fileTree(include: ['*.jar'], dir: 'libs')
にはすでにcompile files('libs/httpmime-4.3.5.jar')
が含まれています
build.gradleを更新し、次の行を追加します
Android{
.
.
.
packagingOptions {
exclude 'META-INF/license.txt'
exclude 'META-INF/LICENSE'
exclude 'META-INF/notice.txt'
exclude 'META-INF/NOTICE'
}
}
これにより、このエラーが修正されます。私は同じエラーを受け取りましたが、これを行うと修正されました。
動作するようになりましたgradleを更新しました
packagingOptions {「META-INF/DEPENDENCIES」を除外「META-INF/LICENSE」を除外「META-INF/LICENSE.txt」を除外「META-INF/NOTICE.txt」を除外}
これをbuild.gradleファイルに更新してください。
packagingOptions {
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}