我使用的最后一个版本,此刻火力地堡的依赖,这是1.0.2,我有问题越来越成为正确分析我的POJO.
问题是,架构可以随时更改,但我不希望我的应用程序崩溃:
D/AndroidRuntime(14097):关闭VM W/dalvikvm(14097):threadid = 1:线程退出,未捕获异常(组= 0x40a451f8)E/AndroidRuntime(14097):致命异常:主E/AndroidRuntime(14097):com .firebase.client.FirebaseException:无法跳转到类型E/AndroidRuntime(14097):at com.firebase.client.DataSnapshot.getValue(DataSnapshot.java:213)
查看依赖关系树,我得知Firebase正在使用Jackson mapper 1.9.7,因此注释@JsonIgnoreProperties(ignoreUnknown = true")不是一个选项.此外,对象映射器被包装到此Firebase对象中,因此我无法配置该DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES属性(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES对于Jackson 1.9及之前).
有没有办法设置此属性,作为类级别注释或配置映射器或任何其他机制?
最好的解决方案是Firebase 1.0.3开始使用Jackson 2.0,但不知道这是否是他们现在关心的事情.
注意:我已经考虑过排除传递的Jackson 1.9.7依赖关系并添加Jackson 2.0以便我可以访问这个ignoreUnknown功能,但我不认为这是一个可行的选择,因为我将改变市长版本.