Gson-Expected a string but was BEGIN_ARRAY

记录今天在读取数据的时候遇到的一个问题:
           com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected a string but was BEGIN_ARRAY at line 1 column 233 path $[3].values[0].value。
  首先debug一下,但是显示是在future.get()的时候执行下一步就异常了,这是因为,使用了一个线程池执行了任务,没有在主线程上执行。
  所以下一步就是本地使用Junit4单元测试那个任务,这时候在执行下面这行语句时出现异常:
1 EntryHierarchy[] entryHierarchy = new Gson().fromJson(text,EntryHierarchy[].class);

  这时候就很明显了,是text的内容和EntryHierachy不相符,text里面的某个字段类型是数组,EntryHierachy是String,就会报这个错误了,其他类似的错误,也可以debug,看看传入的json字符串类型是不是和定义的类相同。

posted @ 2020-10-22 19:36  Mysterioushh  阅读(1516)  评论(0编辑  收藏  举报