正文

错误:

08-09 09:56:51.904: E/AndroidRuntime(16384): java.lang.StackOverflowError
08-09 09:56:51.904: E/AndroidRuntime(16384):     at java.lang.Class.isArray(Class.java:1044)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:331)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:375)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:380)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:355)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:117)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:72)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.Gson.getAdapter(Gson.java:353)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.<init>(ReflectiveTypeAdapterFactory.java:82)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:81)
08-09 09:56:51.904: E/AndroidRuntime(16384):     at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:118)

原因:

我这边的情况是序列化对象嵌套了"其他对象",而赋值的时候又是这个"其他对象"的子类,导致了这个异常。网上游遇到同样错误的建议换到1.7.1版本,我换了还是报错。

【Gson】2.2.4 StackOverflowError 异常的更多相关文章

  1. java快速排序引起的StackOverflowError异常

    写在前面:这篇随笔主要记录一下递归调用引起的虚拟机栈溢出的情况以及通过参数配置了虚拟机栈大小来使递归调用可以顺利执行.并没有对涉及到的一些概念进行详细的解释(因为我自己目前对这些概念并不是特别清楚), ...

  2. OutOfMemoryError异常 和 StackOverflowError异常

      OutOfMemoryError异常  StackOverflowError异常  程序计数器 无 无 Java虚拟机栈 如果虚拟机栈可扩展,扩展时无法申请到足够内存 线程请求的栈深度大于虚拟机所 ...

  3. Android 运行 gson.toJson(object) 报java.lang.StackOverflowError异常

    如以下的代码,运行后报java.lang.StackOverflowError错误: MusicSavedInfo musicSavedInfo=new MusicSavedInfo(currentS ...

  4. Java stackoverflowerror异常与outofmemoryerror异常区别

    1.stackoverflow: 每当java程序启动一个新的线程时,java虚拟机会为他分配一个栈,java栈以帧为单位保持线程运行状态:当线程调用一个方法是,jvm压入一个新的栈帧到这个线程的栈中 ...

  5. 生产问题之StackOverflowError异常小记

    印象中,这是项目中首次遇到 StackOverflowError,在此做个笔记. (吃饭回来写) …… 吃饭回来后,尝试把代码回退来分析异常产生原因,然而却无法复现这个栈溢出异常……醉了 有缘再见再写 ...

  6. JVM中OutOFMemory和StackOverflowError异常代码

    1.Out of Memory 异常 右键Run As --->Run Configuration 设置JVM参数 -Xms20m -Xmx20m 上代码: /** * VM Args:-Xms ...

  7. gson 生成json有\u003d异常字符处理

    只需将Gson的初始化修改为 Gson gson = new GsonBuilder().disableHtmlEscaping().create(); 连接 http://blog.csdn.net ...

  8. Core Java 总结(异常类问题)

    所有代码均在本地编译运行测试,环境为 Windows7 32位机器 + eclipse Mars.2 Release (4.5.2) 2016-10-17 整理 下面的代码输出结果是多少?为什么?并由 ...

  9. 如何写出让java虚拟机发生内存溢出异常OutOfMemoryError的代码

    程序小白在写代码的过程中,经常会不经意间写出发生内存溢出异常的代码.很多时候这类异常如何产生的都傻傻弄不清楚,如果能故意写出让jvm发生内存溢出的代码,有时候看来也并非一件容易的事.最近通过学习< ...

随机推荐

  1. [JS] JS模块化开发之RequireJS

    本节将简述RequireJS常用的功能 RequireJS 实现了 Asynchronous Module API. 目录: 为什么使用RequireJS 加载RequireJS Hello Worl ...

  2. Auto Mapper01

         在项目中一直在使用Auto Mapper技术,但是只是会简单的使用,对其里面的一些具体的细节和知识点不是很清楚,现在就跟着我从最基础的知识点来重新认识下,AutoMapper技术吧.     ...

  3. TFS 2012 在IE11和Chrome (Windows 8.1) 显示英文的解决方案

    1.如果使用IE11浏览TFS Web显示英文,请执行以下操作: 控制面板——>语言——>高级设置 将“替代Windows显示语言”改为“中文(中华人民共和国)”,同时勾选“Web语言”下 ...

  4. LINQ的Union方法

    2个集合合并,有相同的只取中其一个: source code: , , }; , , }; var result = a.Union(b); result.ForEach(delegate (int ...

  5. 利用chrome调试JavaScript代码

    看见网上很多人问怎么用chrome调试JavaScript代码,我也对这个问题抱着疑问,但是没有找到一篇能用的中文文章(可能我的google有问题),也不知道怎么点出一篇E文的,感觉作者写得不错,所以 ...

  6. 用jquery实现遮罩层

    <div style=" display:none" id="yinying"></div> <script type=" ...

  7. LINQ TO SQL 大全

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精 LINQ to SQL语句(1)之Where 适用场景: ...

  8. Linux环境下安装Tigase XMPP Server

    Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...

  9. spring的事务操作

    我们项目一期已经差不多结束了,所以一些细节也被拿了出来,出现最多的就是事务的操作了.因为自己负责的是一个模块(因为是另外一个项目的负责人),所以组员经常会遇到事务的问题,会出现很多奇葩的用法,各种乱用 ...

  10. C++/C互相调用

    C调用C++: 在C++程序中使用extern "C"{}来明确要求C++编译器不要对被调用的C++函数进行换名处理, 当然,这会导致函数无法重载 C++调用C: 在C++程序中使 ...