如何使用json路径从json字符串中获取json节点值?
下面是我的JSON文件 检索所有成员名称的JSON路径是-$.members[*].name 我使用Ready API和Groovy脚本使用上面提到的路径来读取这个json,但是我遇到了一条错误消息,上面说java.lang.NoClassDefFoundError:当我执行下面的代码时,无法初始化类net.minidev.json.JSONValue如何使用json路径从json字符串中获取json节点值?,json,jsonpath,ready-api,Json,Jsonpath,Ready Api,下面是我的JSON文件 检索所有成员名称的JSON路径是-$.members[*].name 我使用Ready API和Groovy脚本使用上面提到的路径来读取这个json,但是我遇到了一条错误消息,上面说java.lang.NoClassDefFoundError:当我执行下面的代码时,无法初始化类net.minidev.json.JSONValue import com.jayway.jsonpath.* Object dataObject = JsonPath.parse(jsonmen
import com.jayway.jsonpath.*
Object dataObject = JsonPath.parse(jsonmentionedabove).read(
'$.members[*].name')
我的Ready API lib&ext文件夹中有以下JAR,我的电脑上有java版本-9.0.1
json-path-2.4.0, json-smart-2.3
您能告诉我是什么导致了这个问题吗?我不熟悉Ready API或json路径和json智能库,但使用纯groovy,您只需执行以下操作:
import groovy.json.*
def str = """<the json string in your question>"""
def json = new JsonSlurper().parseText(str)
def memberNames = json.members*.name
println memberNames.join(", ")
JsonSlurper返回一个java.util.Map of maps结构,可以使用常规groovy findAll、collect等操作或*。如上所述 将asm-1.0.2.jar文件放在Ready API lib文件夹中解决了该问题
import groovy.json.*
def str = """<the json string in your question>"""
def json = new JsonSlurper().parseText(str)
def memberNames = json.members*.name
println memberNames.join(", ")
Molecule Man, Madame Uppercut, Eternal Flame