Compose with Hilt 最新版本 (2.35) 问题:无法找到方法
Compose with Hilt last version (2.35) problem: Unable to find method
我正在尝试在 Android Canary 上使用 Compose 和 Hilt(最新版本),但我无法同步项目。以下错误消息:
Unable to find method ''void com.android.build.api.extension.AndroidComponentsExtension$DefaultImpls.androidTests$default(com.android.build.api.extension.AndroidComponentsExtension, com.android.build.api.extension.VariantSelector, kotlin.jvm.functions.Function1, int, java.lang.Object)''
'void com.android.build.api.extension.AndroidComponentsExtension$DefaultImpls.androidTests$default(com.android.build.api.extension.AndroidComponentsExtension, com.android.build.api.extension.VariantSelector, kotlin.jvm.functions.Function1, int, java.lang.Object)'
我的build.gradle
ext {
compose_version = '1.0.0-beta01'
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.1.0-alpha01'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
def hilt_version = "2.35"
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
}
我的build.gradle(:app)
//Dagger - Hilt
def hilt_version = "2.35"
implementation "com.google.dagger:hilt-android:$hilt_version"
kapt "com.google.dagger:hilt-android-compiler:$hilt_version"
implementation "androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03"
kapt "androidx.hilt:hilt-compiler:1.0.0"
implementation 'androidx.hilt:hilt-navigation-compose:1.0.0-alpha02'
更新到刀柄版本 2.36
似乎已经为我解决了这个问题。
新版本的 Hilt 存在一些错误,临时解决方法是将此 Maven 部分添加到顶层 gradle:
repositories {
google()
mavenCentral()
maven {
url "https://oss.sonatype.org/content/repositories/snapshots"
content {
includeModule("com.google.dagger", "hilt-android-gradle-plugin")
}
}
}
然后 Hilt class 路径如下所示:
classpath("com.google.dagger:hilt-android-gradle-plugin:HEAD-SNAPSHOT")
此问题已通过 com.android.tools.build:gradle:7.0.0-beta05 和 hilt 版本 2.37 修复
github link
https://github.com/google/dagger/issues/2700#issuecomment-873259257
我正在尝试在 Android Canary 上使用 Compose 和 Hilt(最新版本),但我无法同步项目。以下错误消息:
Unable to find method ''void com.android.build.api.extension.AndroidComponentsExtension$DefaultImpls.androidTests$default(com.android.build.api.extension.AndroidComponentsExtension, com.android.build.api.extension.VariantSelector, kotlin.jvm.functions.Function1, int, java.lang.Object)''
'void com.android.build.api.extension.AndroidComponentsExtension$DefaultImpls.androidTests$default(com.android.build.api.extension.AndroidComponentsExtension, com.android.build.api.extension.VariantSelector, kotlin.jvm.functions.Function1, int, java.lang.Object)'
我的build.gradle
ext {
compose_version = '1.0.0-beta01'
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.1.0-alpha01'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
def hilt_version = "2.35"
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
}
我的build.gradle(:app)
//Dagger - Hilt
def hilt_version = "2.35"
implementation "com.google.dagger:hilt-android:$hilt_version"
kapt "com.google.dagger:hilt-android-compiler:$hilt_version"
implementation "androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03"
kapt "androidx.hilt:hilt-compiler:1.0.0"
implementation 'androidx.hilt:hilt-navigation-compose:1.0.0-alpha02'
更新到刀柄版本 2.36
似乎已经为我解决了这个问题。
新版本的 Hilt 存在一些错误,临时解决方法是将此 Maven 部分添加到顶层 gradle:
repositories {
google()
mavenCentral()
maven {
url "https://oss.sonatype.org/content/repositories/snapshots"
content {
includeModule("com.google.dagger", "hilt-android-gradle-plugin")
}
}
}
然后 Hilt class 路径如下所示:
classpath("com.google.dagger:hilt-android-gradle-plugin:HEAD-SNAPSHOT")
此问题已通过 com.android.tools.build:gradle:7.0.0-beta05 和 hilt 版本 2.37 修复 github link https://github.com/google/dagger/issues/2700#issuecomment-873259257