Google Play服务:完成非零退出值2

Sol*_*ell 3 android google-play-services google-maps-android-api-2 android-gradle-plugin

由于我的gradle中存在问题,我无法让我的程序运行.我最近添加了依赖项:

compile 'com.google.android.gms:play-services:7.3.0'
Run Code Online (Sandbox Code Playgroud)

到我的项目.我在项目中使用它来制作地图.但是当我运行该项目时,我收到此错误:

Information:Gradle tasks [:app:assembleDebug]
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugNdk UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72211Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42211Library UP-TO-DATE
:app:prepareComGithubShellSoftwareFab105Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServices730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAds730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAnalytics730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAppindexing730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAppinvite730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAppstate730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesBase730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesCast730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesDrive730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesFitness730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesGames730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesGcm730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesIdentity730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesLocation730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesMaps730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesNearby730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesPanorama730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesPlus730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesSafetynet730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesWallet730Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesWearable730Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:compileDebugJava UP-TO-DATE
:app:preDexDebug UP-TO-DATE
:app:dexDebug
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
    at com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:502)
    at com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:277)
    at com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:491)
    at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:168)
    at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454)
    at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
    at com.android.dx.command.dexer.Main.run(Main.java:246)
    at com.android.dx.command.dexer.Main.main(Main.java:215)
    at com.android.dx.command.Main.main(Main.java:106)
Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException:                             org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2
Information:BUILD FAILED
Information:Total time: 48.802 secs
Information:1 error
Information:0 warnings
Information:See complete output in console
Run Code Online (Sandbox Code Playgroud)

我相信这是由于上面的编译行,但我需要它作为我项目的一部分.我不完全确定在这做什么.

编辑:这是我的整个build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.aszend.android"
        minSdkVersion 14
        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:support-v4:22.1.1'
    compile 'com.android.support:appcompat-v7:22.1.1'
    compile files('libs/aws-android-sdk-autoscaling-2.2.1.jar')
    compile files('libs/aws-android-sdk-cloudwatch-2.2.1.jar')
    compile files('libs/aws-android-sdk-cognito-2.2.1.jar')
    compile files('libs/aws-android-sdk-core-2.2.1.jar')
    compile files('libs/aws-android-sdk-ddb-2.2.1.jar')
    compile files('libs/aws-android-sdk-ddb-mapper-2.2.1.jar')
    compile files('libs/aws-android-sdk-ec2-2.2.1.jar')
    compile files('libs/aws-android-sdk-elb-2.2.1.jar')
    compile files('libs/aws-android-sdk-kinesis-2.2.1.jar')
    compile files('libs/aws-android-sdk-lambda-2.2.1.jar')
    compile files('libs/aws-android-sdk-machinelearning-2.2.1.jar')
    compile files('libs/aws-android-sdk-mobilenalytics-2.2.1.jar')
    compile files('libs/aws-android-sdk-s3-2.2.1.jar')
    compile files('libs/aws-android-sdk-sdb-2.2.1.jar')
    compile files('libs/aws-android-sdk-ses-2.2.1.jar')
    compile files('libs/aws-android-sdk-sns-2.2.1.jar')
    compile files('libs/aws-android-sdk-sqs-2.2.1.jar')
    compile files('libs/Parse-1.9.1.jar')
    compile 'com.github.shell-software:fab:1.0.5'
    compile 'com.parse.bolts:bolts-android:1.2.0'
    compile 'com.google.android.gms:play-services:7.3.0'
}
Run Code Online (Sandbox Code Playgroud)

所有帮助都得到了认可

Dan*_*ent 10

看起来您的项目已超过65536个方法,从错误中的这一行开始:

com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
Run Code Online (Sandbox Code Playgroud)

看到这个答案.基本上,您有许多导入的库,并且应用程序和所有导入库中的方法组合数量已超出限制.

您可以尝试一下,选择您需要的Google Play服务的各个部分,而不是导入整个库.见这里的文档.

因此,如果您只需要地理位置的Google Play服务,请将其替换为:

compile 'com.google.android.gms:play-services:7.3.0'
Run Code Online (Sandbox Code Playgroud)

有了这个:

compile 'com.google.android.gms:play-services-maps:7.3.0'
Run Code Online (Sandbox Code Playgroud)

希望这会让你低于限制!

  • 你的回答让我重新回到马上!谢谢 (2认同)