【问题标题】:Android Spring ClassNotFoundException For ObjectMapperObjectMapper的Android Spring ClassNotFoundException
【发布时间】:2015-07-06 06:26:31
【问题描述】:

我在我的 Android 项目中遇到了这个烦人的异常。我想要做的是将 json 发布到我的休息服务中。我的问题是我不能使用 MappingJackson2HttpMessageConverter。无论我做什么,它都会抛出异常:

04-27 19:58:33.124: E/AndroidRuntime(12924): FATAL EXCEPTION: AsyncTask #2
04-27 19:58:33.124: E/AndroidRuntime(12924): Process: com.restclient.trafficspy, PID: 12924
04-27 19:58:33.124: E/AndroidRuntime(12924): java.lang.RuntimeException: An error occured while executing doInBackground()
04-27 19:58:33.124: E/AndroidRuntime(12924):    at android.os.AsyncTask$3.done(AsyncTask.java:304)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.util.concurrent.FutureTask.run(FutureTask.java:242)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.lang.Thread.run(Thread.java:818)
04-27 19:58:33.124: E/AndroidRuntime(12924): Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/fasterxml/jackson/databind/ObjectMapper;
04-27 19:58:33.124: E/AndroidRuntime(12924):    at org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.<init>(MappingJackson2HttpMessageConverter.java:55)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at com.restclient.trafficspy.RestServiceClient.doInBackground(RestServiceClient.java:51)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at com.restclient.trafficspy.RestServiceClient.doInBackground(RestServiceClient.java:1)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at android.os.AsyncTask$2.call(AsyncTask.java:292)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
04-27 19:58:33.124: E/AndroidRuntime(12924):    ... 4 more
04-27 19:58:33.124: E/AndroidRuntime(12924): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.fasterxml.jackson.databind.ObjectMapper" on path: DexPathList[[zip file "/data/app/com.restclient.trafficspy-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
04-27 19:58:33.124: E/AndroidRuntime(12924):    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
04-27 19:58:33.124: E/AndroidRuntime(12924):    at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
04-27 19:58:33.124: E/AndroidRuntime(12924):    ... 9 more
04-27 19:58:33.124: E/AndroidRuntime(12924):    Suppressed: java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.ObjectMapper
04-27 19:58:33.124: E/AndroidRuntime(12924):        at java.lang.Class.classForName(Native Method)
04-27 19:58:33.124: E/AndroidRuntime(12924):        at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
04-27 19:58:33.124: E/AndroidRuntime(12924):        at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
04-27 19:58:33.124: E/AndroidRuntime(12924):        at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
04-27 19:58:33.124: E/AndroidRuntime(12924):        ... 10 more
04-27 19:58:33.124: E/AndroidRuntime(12924):    Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

我没有使用 Maven 或 Gradle,也不想使用。这是我添加的罐子。我不认为我错过了什么。

您知道导致问题的原因以及解决方法吗?随时询问您是否需要更多信息。谢谢!

【问题讨论】:

标签: java android spring jackson spring-android


【解决方案1】:

好的,当我将 MappingJackson2HttpMessageConverter 更改为 GsonHttpMessageConverter 时,它起作用了。这并不能解决 ClassNotFoundException 问题,但它是一个适合我的解决方案。

【讨论】:

    猜你喜欢
    • 2017-05-01
    • 2011-03-06
    • 2011-06-20
    • 1970-01-01
    • 2017-08-01
    • 2021-03-10
    • 2015-01-09
    • 2018-08-15
    • 2020-10-31
    相关资源
    最近更新 更多