如何在android studio中添加Hilt对“libs.versions.toml”文件的依赖

问题描述 投票:0回答:2

我正在使用 Android Studio Iguana | 2023.2.1 补丁 1. 创建示例项目,默认配置 build.gradle.kts(app) 在此 gradle“libs.versions.toml”文件中创建,

现在我在 toml 文件上添加了 hilt,该文件没有显示在 build.gradle 中。随附的屏幕截图请指导我解决此构建问题。

实现(libs.hilt)显示错误

enter image description here

android android-studio dagger-hilt toml
2个回答
31
投票

使用 KSP 实现 toml 文件中的 Hilt 依赖关系

在toml文件中添加Hilt和KSP

 [libraries]
 hilt-android = { group = "com.google.dagger", name = "hilt-android" , 
                version.ref = "hiltVersion"}
 hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler" , 
                version.ref = "hiltVersion"}

 
 [plugins]
 kotlinAndroidKsp = { id = "com.google.devtools.ksp", version.ref = 
                "kspVersion" }
 hiltAndroid = { id = "com.google.dagger.hilt.android", version.ref = 
                "hiltVersion" }

在项目build.gradle.kts中添加插件

 alias(libs.plugins.hiltAndroid) apply false
 alias(libs.plugins.kotlinAndroidKsp) apply false

在应用程序build.gradle.kts中添加插件

 alias(libs.plugins.kotlinAndroidKsp)
 alias(libs.plugins.hiltAndroid)

在应用程序build.gradle.kts中添加hilt依赖

 implementation(libs.hilt.android)
 ksp(libs.hilt.compiler)

现在同步 gradle 构建和错误将得到解决

快乐编码:)


0
投票
**In toml file**
[libraries]
 hilt-android = { group = "com.google.dagger", name = "hilt-android" , 
                version.ref = "hiltVersion"}
 hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler" , 
                version.ref = "hiltVersion"}

 
 [plugins]
 kotlinAndroidKsp = { id = "com.google.devtools.ksp", version.ref = 
                "kspVersion" }
 hiltAndroid = { id = "com.google.dagger.hilt.android", version.ref = 
                "hiltVersion" }

 **In app level plugin**

     plugins {
            kotlin("kapt")
            alias(libs.plugins.kotlinAndroidKsp)
            alias(libs.plugins.hiltAndroid)
        }

**In project level build.gradle**

plugins {
    alias(libs.plugins.hiltAndroid) apply false
    alias(libs.plugins.kotlinAndroidKsp) apply false
}

and in dependencies
dependencies {
    implementation((libs.hilt.android))
    kapt((libs.hilt.compiler))
}
© www.soinside.com 2019 - 2024. All rights reserved.