1

在这里,我正在使用android studio 1.1.0 中的“ Fabric Plugin ”进行 twitter 集成(使用 twitter 登录)

错误:任务“:app:dexDebug”执行失败。

com.android.ide.common.internal.LoggedErrorException:无法运行命令:/home/dhruv/Dhruv/sdk/build-tools/21.0.2/dx --dex --no-optimize --output /home/dhruv /FestEvo/app/build/intermediates/dex/debug --input-list=/home/dhruv/FestEvo/app/build/intermediates/tmp/dex/debug/inputList.txt 错误代码:2 输出:UNEXPECTED TOP-LEVEL异常:com.android.dex.DexException:多个 dex 文件定义 Lcom/google/gson/JsonSerializer;在 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:

在我的应用程序中使用的库

这是build.gradle:文件

buildscript {
    repositories {
       // jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.+'
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories{
    flatDir{
        dirs 'libs'
    }
    //jcenter()
    maven { url 'https://maven.fabric.io/public' }
}

android {
    compileSdkVersion 21
    buildToolsVersion "21.0.2"

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

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

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    //compile 'com.android.support:appcompat-v7:21.0.3'

    //compile 'com.spotify.sdk:spotifysdk:1.0.0-beta6@aar'
    compile 'com.spotify.sdk:spotifysdk:1.0.0-beta8@aar'
    // NOTE: Version must match!
   // compile 'com.android.support:support-v4:+'

    compile project ('libraries:FacebookSDK')
    compile project ('libraries:simple-crop-image-lib')
    compile project ('libraries:SlidingMenu')
    compile project ('libraries:nineoldandroids')
    compile project ('libraries:google-play-services_lib')
    compile('com.twitter.sdk.android:twitter:1.3.2@aar') {
        transitive = true;
    }

}

请建议我如何解决我的问题提前谢谢你:)

4

1 回答 1

1

也有这个错误。关键在这里:“多个dex文件定义Lcom/google/gson/JsonSerializer;”

您很可能在应用程序中引用了多个版本的 gson。因此,您可以右键单击您的项目模块 -> 打开模块设置 -> 依赖项选项卡,然后删除任何额外的 gson 版本。

如果您想要更清晰的图片,您可以进入 Android Studio 的终端并执行 grep -r gson 以查看所有引用。

于 2015-08-25T10:54:29.650 回答