JsonSlurper在解析文本时抛出GroovyCastException

JsonSlurper在解析文本时抛出GroovyCastException,groovy,Groovy,我有以下代码: import groovy.json.JsonSlurper JsonSlurper slurper = new JsonSlurper().parseText('{"name":"John Doe"}') 但每次我运行它,我都会得到: Caught: org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object '{name=John Doe}' with class 'gr

我有以下代码:

import groovy.json.JsonSlurper

JsonSlurper slurper = new JsonSlurper().parseText('{"name":"John Doe"}')
但每次我运行它,我都会得到:

Caught: org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object '{name=John Doe}' with class 'groovy.json.internal.LazyMap' to class 'groovy.json.JsonSlurper' due to: org.codehaus.groovy.runtime.metaclass.MissingPropertyExceptionNoStack: No such property: name for class: groovy.json.JsonSlurper
Possible solutions: type
异常消息对我来说不是很清楚,我甚至不知道为什么会抛出它。

在parseText调用之后,您接收的不是JsonSluper,而是Map实例。下面是它的工作原理:

import groovy.json.JsonSlurper

def slurper = new JsonSlurper().parseText('{"name":"John Doe"}')
assert slurper instanceof Map
在parseText调用之后,您不会收到JsonSluper,而是收到Map实例。下面是它的工作原理:

import groovy.json.JsonSlurper

def slurper = new JsonSlurper().parseText('{"name":"John Doe"}')
assert slurper instanceof Map

你用错了。这是正确的方法

import groovy.json.JsonSlurper
def slurper = new JsonSlurper()
def result = slurper.parseText('{"name":"John Doe"}')
assert result instanceof Map

你用错了。这是正确的方法

import groovy.json.JsonSlurper
def slurper = new JsonSlurper()
def result = slurper.parseText('{"name":"John Doe"}')
assert result instanceof Map

我要大喝一顿哦!此刻。谢谢我要大喝一顿哦!此刻。谢谢