【发布时间】:2017-10-06 18:41:19
【问题描述】:
我正在尝试使用适用于 Android 的 Moshi 库将 Java 对象转换为 JSON。该对象包含一个
类型的属性数组列表
我正在注册以下适配器来转换对象。
Type type = Types.newParameterizedType
(List.class, HistoryPath.class, ArrayList.class, Float[].class, Float.class);
JsonAdapter<Drawing> adapter = moshi.adapter(type);
String json = adapter.toJson(drawing);
“toJson”方法失败,出现以下异常:
java.lang.IllegalArgumentException:平台 java.util.ArrayList annotated [] 需要显式 要注册的 JsonAdapter 在 com.squareup.moshi.ClassJsonAdapter$1.create(ClassJsonAdapter.java:50) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:99) 在 com.squareup.moshi.ClassJsonAdapter$1.createFieldBindings(ClassJsonAdapter.java:90) 在 com.squareup.moshi.ClassJsonAdapter$1.create(ClassJsonAdapter.java:74) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:99) 在 com.squareup.moshi.ClassJsonAdapter$1.createFieldBindings(ClassJsonAdapter.java:90) 在 com.squareup.moshi.ClassJsonAdapter$1.create(ClassJsonAdapter.java:74) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:99) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:57) 在 com.squareup.moshi.CollectionJsonAdapter.newArrayListAdapter(CollectionJsonAdapter.java:51) 在 com.squareup.moshi.CollectionJsonAdapter$1.create(CollectionJsonAdapter.java:35) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:99) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:57)
我认为我的类型定义是错误的,但我似乎找不到正确的值
【问题讨论】:
标签: moshi