Spring android中的NoClassDeffoundError

时间:2011-05-16 10:43:53

标签: android spring noclassdeffounderror

大家好,我正面临着问题,因为NoClassDeffound:org.springframework.web.client.RestTemplate。 我不知道它会如何删除?请建议我解决方案。

  

错误:05-16 15:59:03.324:   ERROR / AndroidRuntime(296):   java.lang.NoClassDefFoundError:   org.springframework.web.client.RestTemplate   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   org.shopzilla.android.parsing.SearchResult_Json.json_parse(SearchResult_Json.java:10)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   org.shopzilla.android.search.SearchResultActivity $ 1.onClick(SearchResultActivity.java:26)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   android.view.View.performClick(View.java:2408)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   android.view.View $ PerformClick.run(View.java:8816)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   android.os.Handler.handleCallback(Handler.java:587)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   android.os.Handler.dispatchMessage(Handler.java:92)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   android.os.Looper.loop(Looper.java:123)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   android.app.ActivityThread.main(ActivityThread.java:4627)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   java.lang.reflect.Method.invokeNative(母语   方法)05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   java.lang.reflect.Method.invoke(Method.java:521)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:868)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)   05-16 15:59:03.324:   错误/ AndroidRuntime(296):at   dalvik.system.NativeStart.main(母语   方法)

代码:

public void json_parse()
    {
        RestTemplate restTemplate = new RestTemplate();
        String url = "http://catalog.bizrate.com/services/catalog/v1/us/product/2?publisherId=50085&placementId=1&categoryId=1&keyword=iphone+cases&start=0&results=10&sort=relevancy_desc&brandId=&attFilter=&zipCode=90291&biddedOnly=&minRelevancyScore=100&apiKey=58f536aa2fab110bbe0da501150bac1e&format=json";
        String result = restTemplate.getForObject(url, String.class, "SpringSource");
        System.out.println("Result:"+result);

    }

4 个答案:

答案 0 :(得分:0)

发生异常是因为.apk中不包含RestTemplate。我一直在努力解决这个问题,并发现我没有安装 m2eclipse-android-integration 插件。安装插件后,一切都无缝地工作。我现在可以在Eclipse / STS中使用“Run as< Android Application”功能。

您可能需要再次创建项目才能实现此目的。

答案 1 :(得分:0)

您是否正确地在libs文件夹中添加了Spring jar文件?

  • 弹簧机器人核-1.0.0.RELEASE.jar
  • 弹簧机器人静止模板-1.0.0.RELEASE.jar

如果你试过这个

右键单击libs文件夹中的jar文件> BuildPath>排除然后右键单击libs文件夹中的jar文件> BuildPath>再次添加您的文件

答案 2 :(得分:0)

简短回答:

  

从构建路径中删除jar并将lib重命名为libs - >完成

https://jira.springsource.org/browse/ANDROID-78

http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17

答案 3 :(得分:0)

.jars放入/libs文件夹,以便将它们包含在.apk中