2012-03-07 5 views
4

@XmlRootElementと注釈されている第三者のライブラリのクラスをjavax.xml.bind.annotationから使いたいと思います。このアノテーションはAndroidには存在しないため、(保護された名前空間にあるように)追加するのは難しくありません。不足している未使用のアノテーションクラスがプログラムをクラッシュさせないようにするにはどうすればよいですか?

私は実際に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が注釈を無視するために取得する方法はありますか?

答えて

2

私はそれを無視する方法に気づいていませんが、Proguardは難読化中に注釈を削除します。通常、開発ビルドを難読化することはありませんが、すべてのクラスを無視してアノテーションのみを削除するように難読化プロセスを設定することもできます。

+0

ありがとうございました。しかし、開発のためにうまくいくものは好きです:-)。 – Carsten

関連する問題