2013-11-20 36 views
4

我下载了匕首,因为它似乎是Android中依赖注入的好选择。但是我有一些整合编译器的麻烦。有没有关于正确设置的提示?我遵循有关android注释的说明,因为这个项目看起来很相似。但它不适合匕首。如何在IntelliJ中配置匕首

我做了什么: 我在项目的lib文件夹中添加了dagger-1.1.0.jar和javax.inject-1.jar,并添加了一个名为“compile-libs”的新文件夹,其中包含“dagger-compiler- 1.1.0.jar“,因为我不希望这个文件被打包在* .apk中。

project file structure

我加匕首javax.inject到模块的依赖关系。

现在棘手的问题:我加入了编译器注释编译器设置:

settings

当我运行该程序,我得到以下错误:类de.myproject.app.modules 模块适配器.AndroidModule无法加载。请确保为该模块运行代码生成。

所以在我看来代码生成没有发生。我的项目中的“生成”文件夹是空的。那么,在IntelliJ的Android项目中使用匕首的正确设置是什么?

+0

你用什么版本的IDEA的? –

+0

12.1.2社区版 –

+0

我记得类似的问题。尝试将IDEA升级到最新的稳定版或测试版 –

回答

5

未找到匕首编译器依赖关系。

Dagger,JavaWriter和javax.inject也是必需的。
(对于还需要1.2+番石榴 - guava discussion

尝试把那些在.jar文件相同的文件夹匕首编译,然后加入所有4也作为注释处理器。这适用于Eclipse,也适用于IntelliJ。

或者让1个“胖”罐子与所有这些依赖关系在一起。详情请参阅issue 360

文件可以从Maven的下载: