新的AndroidStudio 1.1版本引入了单元测试支持.此URL http://tools.android.com/tech-docs/unit-testing-support提供了如何设置IDE以运行Android源的JUnit测试的分步说明.
这个插件https://bitbucket.org/hvisser/android-apt用于向AS提供Dagger2生成的文件,它适用于通常的Android代码,但不幸的是,没有为任何JUnit测试类生成Dagger2文件.我试着像配置依赖
androidTestApt 'com.google.dagger:dagger-compiler:2.0-SNAPSHOT'
根据android-apt插件文档但没有成功.
我认为问题出在单元测试的不同源目录中 - src/test/java而不是src/androidTest/javaandroid检测所使用的.
您能否提供任何帮助或信息如何解决这个问题?
我有一个工作和图书馆项目.Dagger用于工作项目,几天前我决定在图书馆项目中使用Dagger.我为库项目配置了Eclipse Java Compiler和Annotation Processing设置,添加了必需的Dagger和JavaWriter JAR,在库项目中对模块进行了decalred.现在这两个项目都没有任何错误.
但是当我尝试在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.
Run Code Online (Sandbox Code Playgroud)
我认为这是因为在库项目中.apt_generated文件夹是空的!Dagger不会为库项目生成类.可能有一些IDE /项目配置错误.但是在工作和库项目中完全配置并且没有更多的想法,可能是错的.
所以我的问题是:是否有可能在Android库项目中使用Dagger?什么应该是正确的Eclipse配置启用需要代码生成?
提前致谢.
编辑:我创建了一个新的干净库项目,为Dagger设置并复制旧文件中的所有源文件.此时,新项目中的所有项目都按预期工作.奇怪的事情!