- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
尝试使用基于 jsonbeans 的 com.badlogic.gdx.utils.Json
将对象写入 json 时,出现 StackOverflowError
错误。 。该对象及其引用的所有对象仅包含原始变量,如 float、boolean、int 等,但对 ShapeRenderer 的引用除外。多个对象都引用同一个 ShapeRenderer。有一些循环引用(对象都互相引用),但我认为它应该能够处理这个问题。
导致这些错误的原因是什么?循环引用有问题吗?我不能简单地删除它们而不返回绘图板并重组我的应用程序的主要部分。
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: java.lang.StackOverflowError
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:111)
Caused by: java.lang.StackOverflowError
at java.util.regex.Pattern$CharProperty$1.isSatisfiedBy(Unknown Source)
at java.util.regex.Pattern$7.isSatisfiedBy(Unknown Source)
at java.util.regex.Pattern$7.isSatisfiedBy(Unknown Source)
at java.util.regex.Pattern$7.isSatisfiedBy(Unknown Source)
at java.util.regex.Pattern$7.isSatisfiedBy(Unknown Source)
at java.util.regex.Pattern$CharProperty.match(Unknown Source)
at java.util.regex.Pattern$Curly.match0(Unknown Source)
at java.util.regex.Pattern$Curly.match(Unknown Source)
at java.util.regex.Pattern$CharProperty.match(Unknown Source)
at java.util.regex.Matcher.match(Unknown Source)
at java.util.regex.Matcher.matches(Unknown Source)
at com.badlogic.gdx.utils.JsonWriter$OutputType.quoteName(JsonWriter.java:174)
at com.badlogic.gdx.utils.JsonWriter.name(JsonWriter.java:46)
at com.badlogic.gdx.utils.JsonWriter.set(JsonWriter.java:113)
at com.badlogic.gdx.utils.Json.writeType(Json.java:574)
at com.badlogic.gdx.utils.Json.writeObjectStart(Json.java:533)
at com.badlogic.gdx.utils.Json.writeValue(Json.java:491)
at com.badlogic.gdx.utils.Json.writeFields(Json.java:237)
at com.badlogic.gdx.utils.Json.writeValue(Json.java:492)
at com.badlogic.gdx.utils.Json.writeFields(Json.java:237)
at com.badlogic.gdx.utils.Json.writeValue(Json.java:492)
at com.badlogic.gdx.utils.Json.writeFields(Json.java:237)
at com.badlogic.gdx.utils.Json.writeValue(Json.java:492)
at com.badlogic.gdx.utils.Json.writeFields(Json.java:237)
这持续了大约 1024 行:
at com.badlogic.gdx.utils.Json.writeValue(Json.java:492)
at com.badlogic.gdx.utils.Json.writeFields(Json.java:237)
不确定这是日志限制还是堆栈限制,我猜是第一个。
最佳答案
循环引用是问题所在。这是一个不错的Solution :
I think the best way to address this is, is to probably remove your circular link by re-architeching your data structure in some way, maybe using some sort of map or table instead to link the Entity to the Item.
If you really must keep the circular references, then I'd recommend writing your own parser as simply ignoring the owner on serialization will mean the owner is not returned when the serialized objects are deserialized.
关于java - Libgdx JsonWriter StackOverflowError 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14424071/
我想用以下内容写入 MySQL 日期列值 jsonWriter.value((java.sql.Date) resultSet.getObject(column)); 但是好像这是不可能的。它说lon
我想将几个 JSON 对象写入一个 txt 文件。为了获得更好的 View ,我希望每个对象都位于不同的行中,但我的问题是:我不知道如何添加新行或分隔这些对象。这是我的代码: JsonO
我试图在收到 wifi 信息后调用 JsonWriter 方法向 test.json 添加一些内容,但是在成功写入文件后,文件仍然是空的。这是代码。 接收时 @Override pu
我正在尝试将大对象保存为 JSON。我使用 Gson,但出现与内存(Java 堆空间)相关的异常。我读到我应该使用序列化。但我不知道如何做到最后。我正在尝试创建一个 JsonWriter,但我有一个异
我正在尝试创建一个以某种方式更改请求的中间件。我能够阅读它并更改内容,但我无法弄清楚如何正确设置流编写器来创建新的正文。当我调用 normalized.WriteToAsync(jsonWriter)
我想通过这个函数写入文件,但总是返回异常NESTING PROBLEM。我的错误在哪里?异常出现在这行代码中: writer.name("code").value(s); 请帮帮我 这是电话: use
我已经使用 gson 的 JsonWriter 编写了一个程序来创建 json 文件,创建 json 文件效果很好,但它给了我格式化的 json 不是最好的看到我也希望能够轻松地手动编辑此文件 示例:
尝试使用基于 jsonbeans 的 com.badlogic.gdx.utils.Json 将对象写入 json 时,出现 StackOverflowError 错误。 。该对象及其引用的所有对象仅
我一直致力于通过关注 this sample 来实现这个自定义 JSON 编写器 我正在覆盖 WriteValue 方法,这样我就不会打印 json 的值,而是打印 Type.ToString() 并
gson 是一个很棒的库 - 它运行良好。有时我有自定义要求,并且可以制作和注册 TypeAdapters 和 TypeAdaptorFactories - 这也很有效。 然而,让我感到困惑的是如何委
遵循 http://www.smartjava.org/content/first-steps-rest-spray-and-scala 的教程,有一些意外的错误消息。到底是怎么回事?我是否通过 im
标题说明了一切。我看到它(及其相应的末端)吐出以下内容...... new Foo( ) ...但我不明白 new 在反序列化时实际上做了什么。文档只是说它写了一个 Json 构造函数,但不是 Jso
有人可以指导我如何在没有任何预定义对象的情况下将 GSON 中的 JsonWriter 转换为 JsonObject。 JsonWriter writer = new JsonWriter(new
我的项目中有 struts2-json-plugin 库,我想使用 JSONWriter获取 JSON 字符串并将其放入 JavaScript 仅用于一个参数(不是所有操作的 JSON 结果)只有一个
我正在使用谷歌 Gson用于处理 JSON 字符串的库。我需要将此字符串保存在文件中(保存/加载操作)。 特别是,当我有一个包含一组参数(整数、字符串、基本类型数组等)的类 MyClass 时,例如
这个问题在这里已经有了答案: Why will Gson pretty-print to the console, but not the file? (1 个回答) 关闭 3 年前。 我很难使用
我有一个用例,其中我有一个预转义的有效字符串作为 JsonElement 返回。但是,内部使用 JsonWriter 的 JsonElement 会解析字符串以尝试进行字符串转义/字符替换。 参见 h
从我的 dss 服务请求 json 响应时出现以下错误。 {"Fault":{"faultcode":"soapenv:Server","faultstring":"Error while writi
我将 Struts 从 2.3.7 升级到 2.3.33(使用 Maven)。虽然使用版本 2.3.7 我的 Web 应用程序可以正常工作,但在升级到 2.3.33 后,我在尝试访问包含对服务器的 A
我是一名优秀的程序员,十分优秀!