android-studio - Hilt Kotlin 中不支持的元数据版本
问题描述
我试图在 Kotlin 1.5.10 中使用插件运行我的代码
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
和依赖项如下
dependencies {
...
//Dagger - Hilt
implementation "com.google.dagger:hilt-android:2.33-beta"
kapt "com.google.dagger:hilt-android-compiler:2.33-beta"
implementation "androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03"
kapt "androidx.hilt:hilt-compiler:1.0.0-beta01"
implementation 'androidx.hilt:hilt-navigation-compose:1.0.0-alpha01'
implementation 'com.android.support:palette-v7:28.0.0'
当我迁移到 kotlin_version = "1.5.10" 时,它只是错误地指出
错误:[Hilt] 不支持的元数据版本。检查您的 Kotlin 版本是否 >= 1.0:java.lang.IllegalStateException:不支持的元数据版本。在 dagger.internal.codegen.kotlin.KotlinMetadata.from(KotlinMetadata.java:186) 的 dagger.internal.codegen.kotlin.KotlinMetadata.metadataOf(KotlinMetadata.java:206) 检查您的 Kotlin 版本是否 >= 1.0。基础/java.util.HashMap.computeIfAbsent(HashMap.java:1133) ...
谁能帮我?我花了很多时间,你的回答对我有很大帮助
解决方案
转到https://dagger.dev/hilt/gradle-setup检查 Hilt 当前版本
目前 Kotlin 1.5.21 与 Hilt 2.38 兼容。
dependencies {
...
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.21"
classpath "com.google.dagger:hilt-android-gradle-plugin:2.38"
}
推荐阅读
- sharepoint - REST API 多选字段返回 [object Object] 而不是实际选择 - SharePoint Online
- ios - 未定义符号:_OBJC_CLASS_$_FIRAnalytics
- java - String.getBytes() 和 Charset.encode() 之间的区别
- php - URL 重写/重定向无法使用 htacces
- javascript - 在 Javascript 中使用 RegEx 解析嵌套的 HTML 自定义标签
- android - 支持设计库异常
- sql - 上一年年初至今与部分当年年初至今计算 SQL Server
- php - 页面 url 重定向到媒体文件
- php - 如何计算数据库中的结果?
- java - 将 UTC 时间 HH:mm:ss 转换为设备时间 HH:mm:ss 并添加夏令时(如果有)