我正在尝试让我的Android应用程序作为REST客户端运行。基本上我遵循了这个例子:https://github.com/SpringSource/spring-android-samples/tree/master/spring-android-basic-auth/client/src/org/springframework/android/basicauth。
我正在为Android 2.3及更高版本开发。我添加了
spring-android-rest-template-1.0.0.RELEASE.jar
spring-android-auth-1.0.0.RELEASE.jar
spring-android-core-1.0.0.RELEASE.jar and
jackson-mini-1.9.11.jar
到我的构建路径。
无论如何我总是得到这些错误
11-26 19:01:24.461: E/dalvikvm(15994): Could not find class 'org.codehaus.jackson.map.ObjectMapper', referenced from method org.springframework.http.converter.json.MappingJacksonHttpMessageConverter.<init>
11-26 19:01:24.480: E/AndroidRuntime(15994): java.lang.RuntimeException: An error occured while executing doInBackground()
11-26 19:01:24.480: E/AndroidRuntime(15994): Caused by: java.lang.NoClassDefFoundError: org.codehaus.jackson.map.ObjectMapper
在此代码的第二行:
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter());
有人可以帮助我吗?
光圈
答案 0 :(得分:4)
如果在运行时获得NoClassDefFoundError
,那么我怀疑你没有包含.jar文件在运行时工作。您必须选中每个.jar的复选框,如下所示:
答案 1 :(得分:2)
问题的解决方案是(正如Selvin在他的评论中所述)包括完整的杰克逊而不是杰克逊迷你图书馆。 再次感谢塞尔文。