In android studio I implement push notification. I downloaded a demo and import in android studio.
There is no problem in source code but when I run this program it will show the problem:
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.8.0_40\bin\java.exe'' finished with non-zero exit value 2
How can I solve it?Please help!
You need to know the root cause of the problem. Sometime it may be JDK error. When I analysed I found
Unable to execute dex: method ID not in [0, 0xffff]: 65536
Just above the following error
org.gradle.process.internal.ExecException: Process 'command
'C:\Program Files\Java\jdk1.8.0_40\bin\java.exe'' finished with
non-zero exit value 2
So I enabled multidex and it worked
android {
defaultConfig {
...
multiDexEnabled = true
}
}
So in order to figure out your problem, just track what is going wrong.
The problem is the JDK .. use JDK 7 because 8 isn't supported to implement Android. Read more about it here. Good Luck
Not sure if you've tried it yet, but I removed the .bin and .lock files from the .gradle folder (but kept cache.xml) and it built successfully! Problem solved for me.
I switched to JDK 7 but it didn't change anything so back to version 8.
This problem is not because of JDK 1.8 or 1.7, Its due to dependencies. Please check your Gradle Dependencies.
I have faced similar issue, in my case the problem was occurred due to Facebook dependency
dependencies {
...
...
...
...
...
//Commented the following one
compile 'com.facebook.android:facebook-android-sdk:4.0.0'
}
after commenting the above line everything was normal
Try to add dexOptions block to android
android {
dexOptions {
javaMaxHeapSize "4g"
}
}
It worked for me.