Androidでライブラリ参照したらVerifyErrorが出る
EclipseでAndroidプロジェクトを作ってて、いろんなAndroidアプリで共通に使えるようなライブラリを作った。とすると、それは別プロジェクトにした方がいいから、android-utilsとかいうプロジェクトを作って、そちらにクラスを作った。ついでに、エンティティをテストするためのテストクラスも作った。
で、本体のAndroidアプリを実行しようとしたら、java.lang.VerifyErrorが発生して、アプリが起動しなくなった。
「android verifyerror」でぐぐってヒットしたのがこちら。
≫Androidプロジェクトの罠
なので、Androidの場合は、ライブラリィをAndroidプロジェクトとして作成したならば、プロジェクトではなく、ソースコードとして参照する必要がある。※2 というか、この方法以外に良い方法があるのだろうか。
※2 Javaのビルド・パス -> ソース -> ビルドパス上に必要なソースフォルダ->ソースのリンクで追加する事を指す
なるほど、なるほど。
さっそく、ソースのリンクで追加してみたら、テストクラスでコンパイルエラーが発生。ソースフォルダーの編集で、除外パターンに「**/*Test.java」を追加したら、問題なく実行できるようになった。