用谷歌自带的Json类解析时遇到的java.lang.NoClassDefFoundError: org/json/JSONException问题

来源:互联网 发布:贪玩蓝月翅膀进阶数据 编辑:程序博客网 时间:2024/05/22 22:04
Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.getMethod0(Unknown Source)
at java.lang.Class.getMethod(Unknown Source)
at sun.launcher.LauncherHelper.getMainMethod(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.json.JSONException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)

... 6 more

问题是上面这样的,自己捣鼓了半天,看问题代码应该是缺少org.json.JSONException这个类,说这个类没有找到。

网上找了半天还是没有找到解决办法,突然想到导入一个json的包看是否可行。

我倒了一个org.json.jar到项目的lib目录下,再一编译就可以了。

下面是json.org下载的路径:

http://download.csdn.net/detail/u013476751/8173517

本来开始用的Java的那套解析Json,但是也是编译不过,捣鼓了半天还是用谷歌的Json解析类来解析Json。

哎,真麻烦。

下面是一个用谷歌自带类解析单个Json的例子,其他解析Json的方法也大同小异,自己可以百度查找一下其他方法。

public static JSONArray getQuestionJson(String jsonStr) {JSONArray jsonArray = new JSONArray();JSONTokener tokener = new JSONTokener(jsonStr);try {JSONObject question = (JSONObject) tokener.nextValue();jsonArray.put(0, question.get("id"));jsonArray.put(1, question.get("fid"));jsonArray.put(2, question.get("type"));jsonArray.put(3, question.get("question"));jsonArray.put(4, question.get("config"));jsonArray.put(5, question.get("answer"));jsonArray.put(6, question.get("jiexi"));jsonArray.put(7, question.get("ceshi"));jsonArray.put(8, question.get("uid"));jsonArray.put(9, question.get("username"));jsonArray.put(10, question.get("ifshare"));jsonArray.put(11, question.get("yz"));jsonArray.put(12, question.get("difficult"));jsonArray.put(13, question.get("yema"));jsonArray.put(14, question.get("answer"));jsonArray.put(15, question.get("star"));} catch (JSONException e) {e.printStackTrace();}return jsonArray;}
好了,这个问题就扯到这了,真他娘麻烦。

0 0