You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Hilt报错Unresolved reference: TestInstallIn,求解决方案

解决Hilt中「Unresolved reference: TestInstallIn」错误

以下是针对该问题的具体排查和解决步骤:

  • 检查注解导入语句
    确保FakeThoughtTrackerModule文件顶部添加了正确的导入:

    import com.google.dagger.hilt.android.testing.TestInstallIn
    

    未添加对应包导入是导致未解析引用的最常见原因。

  • 确认测试模块的目录位置
    这个Fake测试模块必须放在src/androidTest/kotlin/[你的包路径]目录下,不能放在src/main目录中。因为androidTestImplementation类型的依赖仅在测试编译阶段生效,main目录无法访问测试专属的注解类。

  • 验证测试注解处理器配置
    确保build.gradle.kts中的kspAndroidTest配置正确关联了Hilt编译依赖,当前配置是正确的,但需确认所有Hilt核心依赖版本统一:

    val hilt_version = "2.50"
    implementation("com.google.dagger:hilt-android:$hilt_version")
    ksp("com.google.dagger:hilt-android-compiler:$hilt_version")
    implementation("androidx.hilt:hilt-navigation-compose:1.1.0")
    androidTestImplementation("com.google.dagger:hilt-android-testing:$hilt_version")
    kspAndroidTest("com.google.dagger:hilt-android-compiler:$hilt_version")
    
  • 检查测试类的Hilt配置
    如果你的测试类需要使用这个Fake模块,必须确保测试类添加了@HiltAndroidTest注解并配置Hilt测试规则:

    @HiltAndroidTest
    class YourTestClass {
        @get:Rule
        val hiltRule = HiltAndroidRule(this)
    
        @Before
        fun setUp() {
            hiltRule.inject()
        }
    
        // 测试方法示例
        @Test
        fun testSomething() {
            // ...
        }
    }
    
  • 执行彻底清理编译
    运行以下命令完成清理和测试编译:

    ./gradlew clean assembleDebugAndroidTest
    

内容的提问来源于stack exchange,提问作者Yauheni Mokich

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 13:27:52