Я пытаюсь использовать Gson на Android для аннотированных классов JAXB для маршалла/unmarshall.Стоп Gson из аннотаций для интроспективного класса
Аннотации JAXB (XML) на устройстве Android не предусмотрены, поэтому библиотека JSON НЕ ДОЛЖНА проверять аннотации - в противном случае мы столкнемся с java.lang.NoClassDefFoundError: javax.xml.bind.annotation.XmlElement
.
У меня такой же problem, используя Jackson, но это похоже fixed (спасибо StaxMan). Так как я не знаю, когда исправление будет выпущен я думал Gson будет альтернатива, из-за этой документации заявление:
There is no need to use any annotations to indicate a field is to be included for serialization and deserialization. All fields in the current class (and from all super classes) are included by default.
К сожалению, я все-таки столкнулись с этой проблемой:
ERROR/AndroidRuntime(338): java.lang.NoClassDefFoundError: javax.xml.bind.annotation.XmlElement
ERROR/AndroidRuntime(338): at java.lang.reflect.Field.getDeclaredAnnotations(Native Method)
ERROR/AndroidRuntime(338): at java.lang.reflect.Field.getDeclaredAnnotations(Field.java:196)
ERROR/AndroidRuntime(338): at java.lang.reflect.AccessibleObject.getAnnotations(AccessibleObject.java:199)
ERROR/AndroidRuntime(338): at com.google.gson.FieldAttributes.getAnnotations(FieldAttributes.java:159)
Есть способ превращения аннотационной инспекции в Gson?
Благодаря Клаус
С этого момента вы нашли решение этой проблемы? –
@resus Нет, но я не преследовал проблему и поэтому не могу сказать что-то о текущем статусе. – FrVaBe