私は仕事と図書館のプロジェクトを持っています。Dagger は作業プロジェクトで使用され、数日前にライブラリ プロジェクトでも Dagger を使用することにしました。ライブラリ プロジェクトの Eclipse Java コンパイラと注釈処理の設定を構成し、必要な Dagger & JavaWriter JAR を追加し、ライブラリ プロジェクトにモジュールをデカールしました。現在、両方のプロジェクトにエラーはありません。
しかし、Android デバイスでアプリケーションを実行しようとすると、クラッシュします。
java.lang.RuntimeException:
Unable to create application com.iqm.smartapp.AlarmsApplication:
java.lang.IllegalStateException:
Module adapter for class com.iqm.library.IQMLibraryModule could not be loaded.
Please ensure that code generation was run for this module.
これは、ライブラリ プロジェクトで .apt_generated フォルダーが空であるためだと思います。Dagger は、ライブラリ プロジェクトのクラスを生成しません。おそらく、IDE/プロジェクトの構成に誤りがあります。しかし、仕事とライブラリプロジェクトの両方で来た設定を正確に行い、何が間違っている可能性があるのか わかりません。
私の質問: Android ライブラリ プロジェクトで Dagger を使用することは可能ですか? また、コード生成を有効にするのに適切な Eclipse 構成は何ですか?
前もって感謝します。
編集:新しいクリーンなライブラリ プロジェクトを作成し、それを Dagger 用に設定して、古いプロジェクトからすべてのソース ファイルをコピーしました。現時点では、新しいプロジェクトのすべてが期待どおりに機能しています。奇妙なこと!