Android, JSONLIB , java.lang.NoClassDefFoundError: Failed resolution of: Lnet/sf/json/JSONArray; 原因分析与解决

不少人在开发Android项目时,在用JSONLIB解析JSON文件时会碰报这样一个错

 java.lang.NoClassDefFoundError: Failed resolution of: Lnet/sf/json/JSONArray

网上有人说是包没导进来,又是放到系统库又是提前包得位置,对于这样的解决方式我不置可否,也不知道有没有人真的通过他们的方法解决过。

对于使用JSONLIB开发Android项目而报这个错的,原因只有一个,包冲突

我们来看JSONLIB的导入包

系统无法找到这个类的位置,当时我很莫名,明明在这里,为什么又不能发现呢?

但是我发现在Android自带的库中也有一个JSONArray的类

到这里,看客们应该明白了,这完完全玩是一个包冲突的问题

那么,如何解决呢?

我推荐直接使用Android自带的org.json包,删去jsonlib(两者相差无几),具体使用方法可以参见我的另一篇博客http://www.cnblogs.com/Raymond-Yang/p/4137275.html

 

原文地址:https://www.cnblogs.com/Raymond-Yang/p/4137597.html