未解决的参考:DaggerTestComponent(Kotlin with Dagger for Test)
Posted
技术标签:
【中文标题】未解决的参考:DaggerTestComponent(Kotlin with Dagger for Test)【英文标题】:Unresolved reference: DaggerTestComponent (Kotlin with Dagger for Test) 【发布时间】:2016-11-01 00:24:28 【问题描述】:当我们使用 Dagger 和 Kotlin 时,我们的 build.gradle 依赖项中需要以下内容
kapt 'com.google.dagger:dagger-compiler:2.0'
compile 'com.google.dagger:dagger:2.0'
provided 'org.glassfish:javax.annotation:10.0-b28'
如http://www.beyondtechnicallycorrect.com/2015/12/30/android-kotlin-dagger/中所述
当我尝试使用 Dagger 执行测试,并按照 https://labs.ribot.co.uk/fast-and-reliable-ui-tests-on-android-17c261b8220c#.o3efc5knx 甚至 https://medium.com/@fabioCollini/android-testing-using-dagger-2-mockito-and-a-custom-junit-rule-c8487ed01b56#.hxtytfns3 生成 DaggerTestComponent.builder()
时,使用 Kotlin 语言,但出现以下错误
Error:(14, 25) Unresolved reference: DaggerTestComponent
我找到了https://***.com/a/36231516/3286489,它解释了如何生成 DaggerTestComponent,并尝试将以下内容放入我的依赖项中。
androidTestApt 'com.google.dagger:dagger-compiler:2.0.1'
显然,我认为这是针对 Java 而不是 Kotlin,所以问题仍然存在。它有 Kotlin 版本吗?如何在我的 Kotlin 项目中生成我的DaggerTestComponent
?
【问题讨论】:
【参考方案1】:从 Kotlin Slack 频道找到答案。感谢基里尔·拉赫曼。
它是(用于仪器测试)
kaptAndroidTest 'com.google.dagger:dagger-compiler:2.0.2'
或(用于单元测试)
kaptTest 'com.google.dagger:dagger-compiler:2.0.2'
【讨论】:
您能否使用当前配置生成签名的 APK? 是的,没问题。它与使用的库或语言无关。以上是关于未解决的参考:DaggerTestComponent(Kotlin with Dagger for Test)的主要内容,如果未能解决你的问题,请参考以下文章