任务':app:dexDebug'的执行失败.不确定httpclient和httpmime之间的依赖问题

Gan*_*nga 2 android build.gradle

在Android Studio中,我收到以下错误: - 任务执行失败':app:dexDebug'.

:app:compileDebugJava UP-TO-DATE:app:preDexDebug:app:dexDebug UNEXPECTED TOP-LEVEL EXCEPTION:com.android.dex.DexException:多个dex文件定义Landroid/support/annotation/AnimRes; 在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)在com.android.dx.merge.DexMerger.mergeClassDefs (DexMerger.java:535)在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)在com.android.dx.merge.DexMerger.merge(DexMerger.java:189)在com.android. dx.command.dexer.Main.mergeLibraryDexBuffers在com.android.dx.command.dexer.Main(Main.java:454)在com.android.dx.command.dexer.Main.runMonoDex(Main.java:303).在com.android.dx.command.Main.main(Main.java:106)的com.android.dx.command.dexer.Main.main(Main.java:215)运行(Main.java:246)

失败

FAILURE:构建因异常而失败.

  • 出了什么问题:任务':app:dexDebug'执行失败.

    com.android.ide.common.internal.LoggedErrorException:无法运行命令:C:\ Users\Priyatosh\AppData\Local\Android\sdk\build-tools\21.1.2\dx.bat --dex --no- optimize --output C:\ Users\Priyatosh\Desktop\Camerafileupload27\app\build\intermediates\dex\debug --input-list = C:\ Users\Priyatosh\Desktop\Camerafileupload27\app\build\intermediates\tmp\dex\debug\inputList.txt错误代码:2输出:UNEXPECTED TOP-LEVEL EXCEPTION:com.android.dex.DexException:多个dex文件定义Landroid/support/annotation/AnimRes; 在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)在com.android.dx.merge.DexMerger.mergeClassDefs (DexMerger.java:535)在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)在com.android.dx.merge.DexMerger.merge(DexMerger.java:189)在com.android. dx.command.dexer.Main.mergeLibraryDexBuffers在com.android.dx.command.dexer.Main(Main.java:454)在com.android.dx.command.dexer.Main.runMonoDex(Main.java:303).在com.android.dx.command.Main.main(Main.java:106)的com.android.dx.command.dexer.Main.main(Main.java:215)运行(Main.java:246)

  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪.使用--info或--debug选项运行以获取更多日志输出.

建筑失败

我的build.gradle文件: -

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "info.androidhive.camerafileupload"
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}



    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:21.0.3'
    //compile files('libs/httpclient-4.3.6.jar')
    //compile files('libs/android-support-v4.jar')
    //compile files('libs/httpcore-4.3.3.jar')
    //compile files('libs/httpmime-4.3.6.jar')
    //compile "org.apache.httpcomponents:httpmime:4.3.6"

    }
Run Code Online (Sandbox Code Playgroud)

图片

任何人都可以建议我如何解决它....?

gio*_*gio 5

build.gradle包含compile 'com.android.support:appcompat-v7:21.0.3'此库取决于v4支持库.所以它将通过gradle添加.你也有android-support-v4.jar你的libs文件夹和行compile fileTree(dir: 'libs', include: ['*.jar']),因此AS将尝试使用相同库的2个实例来构建它.

Sulution是android-support-v4.jarlibs文件夹中删除并重建项目.

更新:

添加到build.gradle下一个块

android{
....
packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
}
Run Code Online (Sandbox Code Playgroud)