[英]How to tell which field failed Gson serialization
我正在使用new Gson().fromJson(String, Class<?>)
序列化一些相當復雜的對象,即使我的所有屬性看起來都new Gson().fromJson(String, Class<?>)
,我仍然得到此堆棧跟蹤:
06-09 10:10:58.768: E/AndroidRuntime(27775): FATAL EXCEPTION: main
06-09 10:10:58.768: E/AndroidRuntime(27775): Process: com.my.project, PID: 27775
06-09 10:10:58.768: E/AndroidRuntime(27775): java.lang.IllegalArgumentException: invalid value for field
06-09 10:10:58.768: E/AndroidRuntime(27775): at java.lang.reflect.Field.setField(Native Method)
06-09 10:10:58.768: E/AndroidRuntime(27775): at java.lang.reflect.Field.set(Field.java:585)
06-09 10:10:58.768: E/AndroidRuntime(27775): at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:95)
06-09 10:10:58.768: E/AndroidRuntime(27775): at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:172)
06-09 10:10:58.768: E/AndroidRuntime(27775): at com.google.gson.Gson.fromJson(Gson.java:803)
06-09 10:10:58.768: E/AndroidRuntime(27775): at com.google.gson.Gson.fromJson(Gson.java:768)
06-09 10:10:58.768: E/AndroidRuntime(27775): at com.google.gson.Gson.fromJson(Gson.java:717)
06-09 10:10:58.768: E/AndroidRuntime(27775): at com.google.gson.Gson.fromJson(Gson.java:689)
... more
有什么辦法讓Gson告訴我它失敗的字段名稱嗎?
我發現的唯一方法是,在調試模式下,嘗試一次執行相同的操作,每次都刪除一個字段...不是一個好的答案,但是我找不到更好的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.