I am using Firebase Database in a Rideshare app and I am trying to dump the code in a device and it shows me File not found an exception where the Jackson data bind library files are not being integrated at build time.I need to clean it and gradle run it like 10 or 15 times and then it's getting installed once.I am converting the Firebase data snapshot to my custom java objects in my code and the Jackson library files go missing and ultimately the mapping fails. Tried removing the legacy Api too,only to see it crash one more time.Someone help me out.
Here is the error which i am getting all the time:
Error:Failed to capture snapshot of output files for task 'transformClassesWithDexForDebug' during up-to-date check.
java.io.FileNotFoundException: D:\FirebaseDBTesting\app\build\intermediates\transforms\dex\debug\folders\1000\10\jackson-databind-2.2.2_502dac698d8ab87b5c73024fb2c1baa4c979a770\classes.dex (The system cannot find the file specified)
here is my gradle file:
apply plugin: 'com.android.application'
android {
packagingOptions {
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/LICENSE'
exclude 'META-INF/license.txt'
exclude 'META-INF/LGPL2.1'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/notice.txt'
}
compileSdkVersion 23
buildToolsVersion "24.0.3"
defaultConfig {
applicationId "com.example.xinthe.firebasedbtesting"
minSdkVersion 17
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
dexOptions {
javaMaxHeapSize "4g"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.google.firebase:firebase-database:10.0.1'
compile 'com.firebase:geofire-android:2.1.1'
compile 'com.google.firebase:firebase-crash:10.0.1'
compile 'com.google.firebase:firebase-auth:10.0.1'
compile 'com.firebase:firebase-client-android:2.5.2'
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:design:23.4.0'
compile 'com.google.android.gms:play-services-maps:10.0.1'
compile 'com.google.android.gms:play-services-location:10.0.1'
compile 'com.android.support:support-v4:23.4.0'
compile 'com.serhatsurguvec.libraries:continuablecirclecountdownview:1.2'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
com.firebase:firebase-client-android:2.5.2
and the current ("new") API, e.g.com.google.firebase:firebase-database:10.0.1
. Why are you using both? Why is the legacy API needed? – Imprest./gradlew assembleDebug --stacktrace
– Multicolor