Herry
Herry

Reputation: 7087

':app:transformClassesWithDexForDebug'. > com.android.build.transform.api.TransformException: when i added Facebook latest SDK in my studio project

I am getting error when i try to add Facebook as a library or as a gradle

//compile 'com.facebook.android:facebook-android-sdk:4.7.0'

Here is my android studio project structure my main App folder gradle have following library .

  compile fileTree(include: ['*.jar'], dir: 'libs')

    compile project(':twitter-core-release')
    compile project(':tweet-ui-release')
    compile project(':twitter-release')
    compile project(':tweet-composer-release')
    //compile 'com.facebook.android:facebook-android-sdk:4.7.0'
    compile project(':facebook_sk')
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'com.squareup.retrofit:retrofit:2.0.0-beta1'
    compile 'com.squareup.retrofit:converter-jackson:2.0.0-beta1'
    compile 'com.squareup.retrofit:adapter-rxjava:2.0.0-beta1'
    compile 'com.twotoasters.jazzylistview:library:1.2.1'
    compile 'com.twotoasters.jazzylistview:library-recyclerview:1.2.1'
    compile 'com.pnikosis:materialish-progress:1.7'
    compile 'com.google.android.gms:play-services-gcm:8.1.0'
    compile 'com.android.support:recyclerview-v7:23.0.1'
    compile 'io.realm:realm-android:0.82.2'
    compile 'com.google.android.gms:play-services-analytics:8.1.0'
    compile 'jp.wasabeef:recyclerview-animators:1.3.0'
    compile 'com.google.code.gson:gson:2.3'
    compile 'io.fabric.sdk.android:fabric:1.3.+@aar'
    compile 'com.digits.sdk.android:digits:1.7.+@aar'

in my app libs it have universal-image-loader-1.9.4.jar

and in facebook_sk it have following

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    //compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:support-v4:23.0.1'
}

in facebook libs it have bolts-android-1.1.2.jar

if i removed facebook skd and build my project then it running fine in studio but when i unable facebook sdk then it give me following error :

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.transform.api.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2

Do i need to use multidex ?

Upvotes: 5

Views: 23089

Answers (3)

s-hunter
s-hunter

Reputation: 25826

I had to enable the multiDex and assign javaMaxHeapSize "4g" otherwise getting outofmemory error.

Need the following in app build gradle file, inside android, the defaultConfig is already there, just have to add the multiDexEnabled true in there, dexOptions is new.

defaultConfig {
    multiDexEnabled true
}

dexOptions {
    javaMaxHeapSize "4g"
}

Upvotes: 0

Herry
Herry

Reputation: 7087

For now i resolved issue by adding multidex

defaultConfig {
        applicationId "com.xxxxx"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        // Enabling multidex support.
        multiDexEnabled true
    }


dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(':twitter-core-release')
    compile project(':tweet-ui-release')
    compile project(':twitter-release')
    compile project(':tweet-composer-release')
    //compile 'com.facebook.android:facebook-android-sdk:4.7.0'
    compile project(':facebook_sk')
    compile 'com.squareup.retrofit:retrofit:2.0.0-beta1'
    compile 'com.squareup.retrofit:converter-jackson:2.0.0-beta1'
    compile 'com.squareup.retrofit:adapter-rxjava:2.0.0-beta1'
    compile 'com.twotoasters.jazzylistview:library:1.2.1'
    compile 'com.twotoasters.jazzylistview:library-recyclerview:1.2.1'
    compile 'com.pnikosis:materialish-progress:1.7'
    compile 'com.google.android.gms:play-services-gcm:8.1.0'
    compile 'com.google.android.gms:play-services-analytics:8.1.0'
    compile 'io.realm:realm-android:0.82.2'
    compile 'jp.wasabeef:recyclerview-animators:1.3.0'
    compile 'com.google.code.gson:gson:2.3'
    compile 'io.fabric.sdk.android:fabric:1.3.+@aar'
    compile 'com.digits.sdk.android:digits:1.7.+@aar'
    compile 'com.android.support:multidex:1.0.1'
}

And for Facebook sdk :

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    //compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:support-v4:23.0.1'
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'com.android.support:recyclerview-v7:23.0.1'
}

Upvotes: 10

MiguelCatalan
MiguelCatalan

Reputation: 916

I get the same error when I have duplicate dependencies with different versions.

Try this command and check if there something twice:

gradle dependencies

Upvotes: 3

Related Questions