Kapt选项未被任何处理器识别。

4
我不明白为什么Kotlin注释处理器无法解析这些参数。
build.gradle.kts 的相关部分:
plugins {
    id("kotlin-kapt")
}

android {
    defaultConfig {
        kapt {
            arguments {
                arg("room.incremental", "true")
                arg("room.schemaLocation", "$projectDir/schemas")
            }
        }
    }
}

dependencies {
    implementation("androidx.room:room-runtime:${Versions.room_version}") // room_version = "2.2.4"
    kapt("androidx.room:room-compiler:${Versions.room_version}")
    implementation("androidx.room:room-ktx:${Versions.room_version}")
}


我收到的确切警告是什么。
> Task :app:kaptDebugKotlin
warning: The following options were not recognized by any processor: '[room.schemaLocation, kapt.kotlin.generated, room.incremental]'
The following options were not recognized by any processor: '[room.schemaLocation, kapt.kotlin.generated, room.incremental]'
2个回答

6
如果您的代码没有使用任何注解处理器的注解,那么kapt任务将被跳过,并且不会调用任何注解处理器,因此,您传递的选项将被忽略,因为没有任何被调用的注解处理器(如果有)对它们感兴趣。

我正在使用与@Rishabh Kohli代码相同的代码,并在我的代码中使用Dagger Hilt中的Room,但我收到了相同的警告和额外的警告,即“找不到androidx.room.RoomDatabase的类文件”。 - Atef Etman

2

看起来我的问题是在设置gradle后立即尝试构建应用程序,而没有实际在应用程序中实现room注释。

一旦我这样做了,警告就消失了。

我想注释处理器直到有相关的注释才会参与。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接