私はJson-Pathが初めてです。
Eclipse ビルド パスに json-path-0.8.0.jar を含めました。
JSON をhttp://code.google.com/p/json-path/からファイルにコピーしました。
そして、私はこのファイルを解析し、次を使用して著者名を表示しようとしています:
String jsonPath = "$.store.book[1].author";
File jsonFile = new File("C:\\ServicesTest\\jsonresponse2.json");
System.out.println("Author: "+JsonPath.read(jsonFile, jsonPath));
このエラーが発生しています:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/Validate
at com.jayway.jsonpath.JsonPath.read(JsonPath.java:304)
at office.jsonPathparse.main(jsonPathparse.java:34)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.Validate
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)
... 2 more
org.apache.commons.lang-2.6.jar も含まれていますが、まだエラーが発生しています。ここで何か不足していますか?
問題が見つかりました:次のjarをパスに追加する必要があります:
json-path-0.8.0.jar
commons-lang-2.6.jar
commons-io-2.1.jar
json-smart-1.1.jar
最後の2が抜けていました。