web-dev-qa-db-ja.com

Facebook SDKを使用すると、java.exeがゼロ以外の終了値2で終了しました

アプリをコンパイルしようとすると、次のエラーが表示されます

Error:Execution failed for task ':app:dexDebug'.
> com.Android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_60\bin\Java.exe'' finished with non-zero exit value 2

Facebook Android SDKを取り除くと、問題なくコンパイルされます。

私のbuild.gradle:

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 21 //tried 19 and 22 changing targetSdkVersion and buildToolsVersion accordingly
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "..."
        minSdkVersion 15
        targetSdkVersion 21
    }

    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-project.txt'
        }
    }

...

}

dependencies {
    ...
    compile 'com.facebook.Android:facebook-Android-sdk:3.23.1' //tried older versions as well
}
20
Michał K

まず最初に、gradle :MODULE:dependenciesを使用して依存関係のリストを作成する必要があります。ライブラリの競合(同じライブラリですがバージョンが異なる)があるかどうかを確認します。この場合、Facebook SDKからサポートライブラリモジュールを除外する必要があります。

compile ('com.facebook.Android:facebook-Android-sdk:3.23.1'){
        exclude group: 'com.google.Android', module: 'support-v4'
    }
18
Pawel Cala

Facebook SDKプロジェクトライブラリを使用している間、Pawelのソリューションは役に立ちました。

しかし、Gradle依存関係に移行した後、動作しなくなりました'com.facebook.Android:facebook-Android-sdk:4.1.1'。プロジェクトを再構築/再開しようとしましたが、何も助けませんでした。

これは私のために働いた:

compile ('com.facebook.Android:facebook-Android-sdk:4.1.1') {
    exclude module: 'support-v4'
}
0
Andrew