我想使用来自第 3 方库的类,该类用 javax.xml.bind.annotation
中的 @XmlRootElement
进行注释。此注释在 Android 上不存在,并且很难添加(因为它位于 protected 命名空间中)。
我实际上并没有在 JAXB 上下文中使用该类,所以我很乐意忽略注释。然而,Android JVM 不是,它会从类加载器中抛出一个 ClassNotFounException
:
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlAccessorType in loader dalvik.system.PathClassLoader[/data/app/csiro.truststore.client.tssandroidclient-2.apk]
at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:251)
at java.lang.ClassLoader.loadClass(ClassLoader.java:540)
at java.lang.ClassLoader.loadClass(ClassLoad
有什么方法可以让 Android 忽略注释?
最佳答案
我不知道有什么方法可以忽略它,但是 Proguard将在混淆过程中删除注释。您通常不会混淆开发构建,但您可以将混淆过程配置为忽略所有类,从而只删除注释。
关于android - 如何防止丢失的、未使用的注释类使我的程序崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9610056/