Reputation: 2070
I've been using jackson parser for string to json conversion and also for converting string json to objects. This is working properly on a previous project. It is still in my workspace. Now that I have created a new project and add the necessary jar files. I've been getting this error when trying to create a ObjectMapper object
ObjectMapper mapper = new ObjectMapper();
Here's my logcat:
11-19 22:03:21.106: E/AndroidRuntime(28585): FATAL EXCEPTION: Thread-2896
11-19 22:03:21.106: E/AndroidRuntime(28585): Process: DevCity.Valkyrie.Ca.CxPtl.Android, PID: 28585
11-19 22:03:21.106: E/AndroidRuntime(28585): java.lang.NoClassDefFoundError: Failed resolution of: Lcom/fasterxml/jackson/databind/ObjectMapper;
11-19 22:03:21.106: E/AndroidRuntime(28585): at DevCity.Valkyrie.Ca.CxPtl.Android.Helpers.JsonHelper.convertObjectToJsonString(JsonHelper.java:12)
11-19 22:03:21.106: E/AndroidRuntime(28585): at DevCity.Valkyrie.Ca.CxPtl.Android.Helpers.ApiHelper.send(ApiHelper.java:119)
11-19 22:03:21.106: E/AndroidRuntime(28585): at DevCity.Valkyrie.Ca.CxPtl.Android.Login.verifyCredentials(Login.java:178)
11-19 22:03:21.106: E/AndroidRuntime(28585): at DevCity.Valkyrie.Ca.CxPtl.Android.Login$1.run(Login.java:136)
11-19 22:03:21.106: E/AndroidRuntime(28585): at java.lang.Thread.run(Thread.java:818)
11-19 22:03:21.106: E/AndroidRuntime(28585): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.fasterxml.jackson.databind.ObjectMapper" on path: DexPathList[[zip file "/data/app/DevCity.Valkyrie.Ca.CxPtl.Android-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
11-19 22:03:21.106: E/AndroidRuntime(28585): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
11-19 22:03:21.106: E/AndroidRuntime(28585): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
11-19 22:03:21.106: E/AndroidRuntime(28585): at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
11-19 22:03:21.106: E/AndroidRuntime(28585): ... 5 more
11-19 22:03:21.106: E/AndroidRuntime(28585): Suppressed: java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.ObjectMapper
11-19 22:03:21.106: E/AndroidRuntime(28585): at java.lang.Class.classForName(Native Method)
11-19 22:03:21.106: E/AndroidRuntime(28585): at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
11-19 22:03:21.106: E/AndroidRuntime(28585): at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
11-19 22:03:21.106: E/AndroidRuntime(28585): at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
11-19 22:03:21.106: E/AndroidRuntime(28585): ... 6 more
11-19 22:03:21.106: E/AndroidRuntime(28585): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
11-19 22:03:21.258: I/Timeline(28585): Timeline: Activity_idle id: android.os.BinderProxy@42725d9 time:30155856
11-19 22:03:21.631: E/WindowManager(28585): android.view.WindowLeaked: Activity DevCity.Valkyrie.Ca.CxPtl.Android.Login has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{2772d509 V.E..... R......D 0,0-578,345} that was originally added here
11-19 22:03:21.631: E/WindowManager(28585): at android.view.ViewRootImpl.<init>(ViewRootImpl.java:367)
11-19 22:03:21.631: E/WindowManager(28585): at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:271)
11-19 22:03:21.631: E/WindowManager(28585): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:85)
11-19 22:03:21.631: E/WindowManager(28585): at android.app.Dialog.show(Dialog.java:306)
11-19 22:03:21.631: E/WindowManager(28585): at DevCity.Valkyrie.Ca.CxPtl.Android.Login.processCredentials(Login.java:129)
11-19 22:03:21.631: E/WindowManager(28585): at DevCity.Valkyrie.Ca.CxPtl.Android.Login.verifyFields(Login.java:116)
11-19 22:03:21.631: E/WindowManager(28585): at DevCity.Valkyrie.Ca.CxPtl.Android.Login.logMeIn(Login.java:86)
11-19 22:03:21.631: E/WindowManager(28585): at java.lang.reflect.Method.invoke(Native Method)
11-19 22:03:21.631: E/WindowManager(28585): at java.lang.reflect.Method.invoke(Method.java:372)
11-19 22:03:21.631: E/WindowManager(28585): at android.view.View$1.onClick(View.java:4091)
11-19 22:03:21.631: E/WindowManager(28585): at android.view.View.performClick(View.java:4856)
11-19 22:03:21.631: E/WindowManager(28585): at android.view.View$PerformClick.run(View.java:19956)
11-19 22:03:21.631: E/WindowManager(28585): at android.os.Handler.handleCallback(Handler.java:739)
11-19 22:03:21.631: E/WindowManager(28585): at android.os.Handler.dispatchMessage(Handler.java:95)
11-19 22:03:21.631: E/WindowManager(28585): at android.os.Looper.loop(Looper.java:211)
11-19 22:03:21.631: E/WindowManager(28585): at android.app.ActivityThread.main(ActivityThread.java:5373)
11-19 22:03:21.631: E/WindowManager(28585): at java.lang.reflect.Method.invoke(Native Method)
11-19 22:03:21.631: E/WindowManager(28585): at java.lang.reflect.Method.invoke(Method.java:372)
11-19 22:03:21.631: E/WindowManager(28585): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
11-19 22:03:21.631: E/WindowManager(28585): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
I really don't why. This is working on a different project.
Here's a screenshot of my package explorer for reference
Any help will be greatly appreciated. Thanks!
Upvotes: 0
Views: 4529
Reputation: 2070
For those who are interested in looking for an answer to this kind of situation. Always make sure that core, databind and annotations have the same version. Also updating them to a newer version will also help.
Upvotes: 2