前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AndroidStudio导入httpmime jar编译不通过的解决办法

AndroidStudio导入httpmime jar编译不通过的解决办法

作者头像
小小工匠
发布2021-08-16 09:49:53
3560
发布2021-08-16 09:49:53
举报
文章被收录于专栏:小工匠聊架构

本人项目的build.gradle

apply plugin: ‘com.android.application’ apply plugin: ‘android-apt’ def AAVersion = ‘3.3.2’

android {

代码语言:javascript
复制
packagingOptions {
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/NOTICE.txt'
}

useLibrary 'org.apache.http.legacy'

compileSdkVersion 23
buildToolsVersion "22.0.1"


defaultConfig {
    applicationId "com.turing.base"
    minSdkVersion 10
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

}

dependencies { compile fileTree(dir: ‘libs’, include: [‘*.jar’])

代码语言:javascript
复制
apt "org.androidannotations:androidannotations:$AAVersion"
compile "org.androidannotations:androidannotations-api:$AAVersion"

compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.apkfuns.logutils:library:1.0.6'
compile 'com.android.support:design:23.0.1'

// 使用HttpClient传递文件需要添加的依赖
compile 'org.apache.httpcomponents:httpcore:4.3.3'
compile 'org.apache.httpcomponents:httpmime:4.3.6'

}

apt {

代码语言:javascript
复制
arguments {
    androidManifestFile variant.outputs[0].processResources.manifestFile
    resourcePackageName 'com.turing.base' // 工程包名
}

}

======================================= 起因: build.gradle的dependencies加入了

compile ‘org.apache.httpcomponents:httpcore:4.3.3’ compile ‘org.apache.httpcomponents:httpmime:4.3.6’

Err现象: 在构建时出现以下错误log [html] view plaincopy Information:Gradle tasks [:imagecloud:assembleDebug] Warning:Dependency org.apache.httpcomponents:httpclient:4.3.6 is ignored for debug as it may be conflicting with the internal version provided by Android. In case of problem, please repackage it with jarjar to change the class packages Warning:Dependency org.apache.httpcomponents:httpclient:4.3.6 is ignored for release as it may be conflicting with the internal version provided by Android. In case of problem, please repackage it with jarjar to change the class packages :imagecloud:preBuild :imagecloud:compileDebugNdk UP-TO-DATE :imagecloud:preDebugBuild :imagecloud:checkDebugManifest :imagecloud:preReleaseBuild :imagecloud:prepareComAndroidSupportAppcompatV72103Library UP-TO-DATE :imagecloud:prepareComAndroidSupportSupportV42103Library UP-TO-DATE :imagecloud:prepareDebugDependencies :imagecloud:compileDebugAidl UP-TO-DATE :imagecloud:compileDebugRenderscript UP-TO-DATE :imagecloud:generateDebugBuildConfig UP-TO-DATE :imagecloud:generateDebugAssets UP-TO-DATE :imagecloud:mergeDebugAssets UP-TO-DATE :imagecloud:generateDebugResValues UP-TO-DATE :imagecloud:generateDebugResources UP-TO-DATE :imagecloud:mergeDebugResources UP-TO-DATE :imagecloud:processDebugManifest UP-TO-DATE :imagecloud:processDebugResources UP-TO-DATE :imagecloud:generateDebugSources UP-TO-DATE :imagecloud:compileDebugJava UP-TO-DATE :imagecloud:preDexDebug UP-TO-DATE :imagecloud:dexDebug UP-TO-DATE :imagecloud:processDebugJavaRes UP-TO-DATE :imagecloud:validateDebugSigning :imagecloud:packageDebug Error:duplicate files during packaging of APK E:\workspace\project\android\AndroidStudio\imagecloud\build\outputs\apk\imagecloud-debug-unaligned.apk Path in archive: META-INF/DEPENDENCIES Origin 1: C:\Users\Administrator.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpmime\4.3.6\cf8bacbf0d476c7f2221f861269365b66447f7ec\httpmime-4.3.6.jar Origin 2: C:\Users\Administrator.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.3.3\f91b7a4aadc5cf486df6e4634748d7dd7a73f06d\httpcore-4.3.3.jar You can ignore those files in your build.gradle: android { packagingOptions { exclude ‘META-INF/DEPENDENCIES’ } } Error:Execution failed for task ‘:imagecloud:packageDebug’.

Duplicate files copied in APK META-INF/DEPENDENCIES File 1: C:\Users\Administrator.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpmime\4.3.6\cf8bacbf0d476c7f2221f861269365b66447f7ec\httpmime-4.3.6.jar File 2: C:\Users\Administrator.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpmime\4.3.6\cf8bacbf0d476c7f2221f861269365b66447f7ec\httpmime-4.3.6.jar Information:BUILD FAILED Information:Total time: 4.954 secs Information:2 errors Information:2 warnings Information:See complete output in console

解决方法: 在build.gradle的android{…}里面加上 [html] view plaincopy packagingOptions { exclude ‘META-INF/DEPENDENCIES’ exclude ‘META-INF/NOTICE’ exclude ‘META-INF/LICENSE’ exclude ‘META-INF/LICENSE.txt’ exclude ‘META-INF/NOTICE.txt’ }

packagingOptions 应该放到最前面才生效,放到最后面经试验不行。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015/11/25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档