5

我有一个工作和图书馆项目。工作项目中使用了 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 设置它并从旧的复制所有源文件。此时,新项目中的所有内容都按预期工作。奇怪的事情!

4

1 回答 1

0

我没有看到在库中使用 Dagger 有任何问题。您的问题是它没有生成必要的绑定代码。

要在 Eclipse 中启用此功能,请参阅此链接

于 2014-01-21T11:35:26.727 回答