java.exe以非零退出值2

时间:2015-05-02 05:24:38

标签: android dependencies android-gradle

我之前的播放服务版本是6.5.87,我升级到7.0.0然后出现此错误

  

com.android.ide.common.process.ProcessException:   org.gradle.process.internal.ExecException:进程'命令   ' C:\ Program Files \ Java \ jdkx.x.x_xx \ bin \ java.exe''完成了   非零退出值2

 compile 'com.google.android.gms:play-services:6.5.87'

我已经升级了播放服务然后....现在我的gradle是

dependencies {
compile project(':com_facebook_android')
compile project(':pullToRefreshLib')
compile project(':smoothProgressbarLib')
compile project(':progressMaterial')
compile 'com.android.support:support-v4:22.0.0'
compile 'com.google.android.gms:play-services:7.0.0'
compile 'com.google.code.gson:gson:2.3'
compile 'com.jakewharton:butterknife:6.1.0'
compile files('libs/android-async-http-1.4.6.jar')
compile files('libs/commons-io-2.4.jar')
compile files('libs/google-api-client-1.4.1-beta.jar')
compile files('libs/google-api-client-googleapis-1.4.1-beta.jar')
compile files('libs/jackson-core-asl-1.6.7.jar')
compile files('libs/jeval.jar')
compile files('libs/jscience.jar')
compile files('libs/libGoogleAnalyticsV2.jar')
compile files('libs/nineoldandroids-2.4.0.jar')
compile files('libs/universal-image-loader-1.9.3.jar')
compile files('libs/YouTubeAndroidPlayerApi.jar')
compile files('libs/guava-r09.jar')

是否有冲突库?

2 个答案:

答案 0 :(得分:16)

没有人回答。我发现....解决方案是multidex

public class MyApplication extends MultiDexApplication {

@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

}
清单文件中的

<application
        android:name=".MyApplication"
        android:allowBackup="true"
        android:icon="@drawable/app_icon"
        android:label="@string/app_name"
        android:largeHeap="true"
        android:theme="@style/Theme.MyAppTheme">

我的gradle文件

android {
compileSdkVersion 21
buildToolsVersion "22.0.1"

defaultConfig {
    applicationId "com.winapp"
    minSdkVersion 14
    targetSdkVersion 21
    multiDexEnabled = true
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
}

packagingOptions {
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/LICENSE.txt'
}

dexOptions {
    preDexLibraries = false
    incremental true
    javaMaxHeapSize "4g"
}

afterEvaluate {
    tasks.matching {
        it.name.startsWith('dex')
    }.each { dx ->
        if (dx.additionalParameters == null) {
            dx.additionalParameters = ['--multi-dex']
        } else {
            dx.additionalParameters += '--multi-dex'
        }
    }
}
}

答案 1 :(得分:2)

您将只能使用您将使用的Google Play服务API。在此链接中,您应该选择要在项目https://developers.google.com/android/guides/setup#split

中编译的URI

例如,如果您只包含Google分析,则应仅在gradle项目文件中添加此分析

compile 'com.google.android.gms:play-services-analytics:8.1.0'