android中使用net.sf.json

android中自带的json使用起来不是很方便,想使用net.sf.json,结果运行的时候又发现有异常:java.lang.VerifyError: net/sf/json/JSONObject

经过各种搜索,发现原来是我们使用的json-lib-2.4-jdk15.jar包要引用其他的几个jar包,这就表示想使用net.sf.json还不能只是简单的加一个jar包

参考官网配置:http://json-lib.sourceforge.net/index.html

所有需要的jar包如下

commons-beanutils-1.8.0.jar

commons-collections-3.2.1.jar

commons-lang-2.5.jar

commons-logging-1.1.1.jar

ezmorph-1.0.6.jar

json-lib-2.4-jdk15.jar


配好以上jar包后还不够,编译的时候会报冲突错误:multiple dex files define Lorg/apache/commons/collections/Buffer

发现commons-beanutils-1.8.0.jar包中有和commons-collections-3.2.1.jar冲突的类,但是本人又想使用commons-collections-3.2.1.jar包,所以采取了一个简单粗暴的方式。。。

直接把commons-beanutils-1.8.0.jar中的org/apache/commons/collections目录和目录下的class直接删掉(用解压缩工具打开,直接删除操作),这样再编译就不会报错了

PS.最好把改过的jar包标注一下。。。免得别人踩到地雷。。。

这样,我们就可以愉快的使用net.sf.json了。。。


你可能感兴趣的:(apache,android,json)