网站首页
Java
站长
开源
框架
理论
JS
Linux
DB
服务器
NET
生活
软件
PHP
其他
您的位置:首页 > 开源 > 在使用Java解析JSON时 缺包报错
在使用Java解析JSON时 缺包报错
2014-12-18    10314    0

在使用Java解析JSON时,因为缺少包,会报一些错误,这些都很容易解决的。

 

2014-12-18 10:51:55 org.apache.commons.httpclient.HttpMethodBase getResponseBody
警告: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended.
{"code":0,"data":{"country":"\u4e2d\u56fd","country_id":"CN","area":"\u534e\u5317","area_id":"100000","region":"\u5317\u4eac\u5e02","region_id":"110000","city":"\u5317\u4eac\u5e02","city_id":"110000","county":"\u671d\u9633\u533a","county_id":"110105","isp":"\u8054\u901a","isp_id":"100026","ip":"125.34.6.143"}}
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
 at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
 at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
 at http.GetIpAdd.main(GetIpAdd.java:21)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntimeException
 at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
 ... 13 more

这是因为缺少commons-lang包造成的。

 

2014-12-18 10:56:34 org.apache.commons.httpclient.HttpMethodBase getResponseBody
警告: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended.
{"code":0,"data":{"country":"\u4e2d\u56fd","country_id":"CN","area":"\u534e\u5317","area_id":"100000","region":"\u5317\u4eac\u5e02","region_id":"110000","city":"\u5317\u4eac\u5e02","city_id":"110000","county":"\u671d\u9633\u533a","county_id":"110105","isp":"\u8054\u901a","isp_id":"100026","ip":"125.34.6.143"}}
Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher
 at http.GetIpAdd.main(GetIpAdd.java:19)
Caused by: java.lang.ClassNotFoundException: net.sf.ezmorph.Morpher
 at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
 ... 1 more

这是因为缺少ezmorph造成的。

 

2014-12-18 10:59:02 org.apache.commons.httpclient.HttpMethodBase getResponseBody
警告: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended.
{"code":0,"data":{"country":"\u4e2d\u56fd","country_id":"CN","area":"\u534e\u5317","area_id":"100000","region":"\u5317\u4eac\u5e02","region_id":"110000","city":"\u5317\u4eac\u5e02","city_id":"110000","county":"\u671d\u9633\u533a","county_id":"110105","isp":"\u8054\u901a","isp_id":"100026","ip":"125.34.6.143"}}
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/map/MultiKeyMap
 at net.sf.json.JsonConfig.<init>(JsonConfig.java:56)
 at net.sf.json.JSONObject.fromObject(JSONObject.java:145)
 at http.GetIpAdd.main(GetIpAdd.java:19)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.map.MultiKeyMap
 at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
 ... 3 more

这是因为缺少commons-collections包造成的。

 

下一篇,我将做一个解析淘宝API,根据IP获取城市,解析返回JSON的示例。可以根据示例和示例的JAR包,来做自己的一些应用。

但是切记要注意,在增加包时要注意包的版本,不要和原来工程引起包冲突

上一篇: 从淘宝API根据IP获取IP城市信息
下一篇: 命令行启动Apache查看错误
发表评论:
您的网名:
个人主页:
编辑内容: