多DEX文件定义Landroid /支持/ V4 / android的工作室 [英] Multiple dex files define Landroid/support/v4/ in android studio

查看:273
本文介绍了多DEX文件定义Landroid /支持/ V4 / android的工作室的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

集成(添加和放大器,工作)。许多库

至于 ActionBarSherlock 库,我有这么多的问题吧。

But as for ActionBarSherlock library, I have so many problems with it.

第一期是流行的问题多DEX文件定义

我知道复制Android的支持 - v4.jar 导致它,但我解决不了这个问题,现在的:

I know The duplicated android-support-v4.jar causes it, but I can not solve this issue now :

Error:Execution failed for task ':fitness:dexDebug'.

Error Code:
2
Output:
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
    at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
    at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
    at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
    at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
    at com.android.dx.merge.DexMerger.merge(DexMerger.java:188)
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439)
    at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287)
    at com.android.dx.command.dexer.Main.run(Main.java:230)
    at com.android.dx.command.dexer.Main.main(Main.java:199)
    at com.android.dx.command.Main.main(Main.java:103)

我跟着<一个答案href="http://stackoverflow.com/questions/20989317/multiple-dex-files-define-landroid-support-v4-accessibilityservice-accessibility">same错误。它使用的:

dependencies {
    compile('...') {
      exclude module: 'support-v4'
    }

    compile 'com.android.support:support-v4:18.0.+'
}

不过,我收到的第二期不支持的摇篮DSL方法发现:排除()错误! 因此,我改变了 build.gradle 主模块是这样的:

But I received Second Issue : unsupported Gradle DSL method found: 'exclude()'! error. Therefore I changed build.gradle of main module like this:

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

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':google-play-services')
    compile files('/google-play-services/libs/google-play-services.jar')
    compile (project(':actionbarsherlock')) {
        exclude(module: 'support-v4')
    }
    compile 'com.android.support:support-v4:18.0.+'
}

解决 第二期,但仍然获得第一期 多DEX文件中定义错误。

Solved Second Issue, But still get First Issue Multiple dex files define error.

我读了很多的话题,但不能解决第一期目前,

I read many topics, but can not solve First Issue now,

请帮帮我,

谢谢

P / S:我可以用摇篮同步successully,但在运行时,它得到上面的错误

我用Android的工作室0.5.5

修改

build.gradle ActionBarSherlock 的,它只有一个 Android的支持-V4的.jar

dependencies {
        compile fileTree(dir: 'libs', include: '*.jar')
}

setting.gradle 是这样的:

include ':fitness', ':google-play-services',':actionbarsherlock'

@Garbriele:我更新了新的问题,节目 build.gradle项目 build.gradle主模块 build.gradle 项目

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.9.+'
    }
}

build.gradle 主模块编辑后:

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar' // Get following error in this line
} 

我在下面得到这个错误:

I got this error in below :

好了,感谢@Garbriele评论,我已经使用这个固定的:

Okay, thanks for @Garbriele comment, I already fixed this by using this :

repositories {
            mavenCentral()
        }
dependencies {
        compile fileTree(dir: 'libs', include: '*.jar')
        compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar' // Get following error in this line
    } 

编辑2 :当我把这样的:

repositories {
            mavenCentral()
        }
dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile 'com.google.android.gms:play-services:+'
}

不过得到的第一期 多DEX文件定义错误。

我现在想的是如何添加 com.google.android.gms:通过的Maven打-服务成功,

What I want now is how to add com.google.android.gms:play-services library via Maven successfully,

请帮帮我,

谢谢

更新

执行这些步骤后:

  • 将主模块通过Maven的库中的 build.gradle 编译com.google.android.gms:播放服务:+

重新启动Android的工作室

同步项目摇篮

没有再一次得到这个错误。

No longer get this error again.

推荐答案

太奇怪了,

当我把这样的:

repositories {
            mavenCentral()
        }
dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile 'com.google.android.gms:play-services:+'
}

我仍然得到第一期 多DEX文件定义错误。

但在执行这些步骤:

  • 将主模块通过Maven的库中的 build.gradle 编译com.google.android.gms:播放服务:+

重新启动Android的工作室

同步项目摇篮

没有再一次得到这个错误。

No longer get this error again.

这篇关于多DEX文件定义Landroid /支持/ V4 / android的工作室的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆