我目前正在学习 Udemy 课程来学习 Kotlin,我有一个关于 Gradle 和任务的问题。我尝试过 HILT,并且必须将 kapt 添加到我的项目中(带有 jetpack-compose 的空项目)。
我的 app/build.gradle.kts 看起来像这样:
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.jetbrains.kotlin.android)
id("io.objectbox")
id("kotlin-kapt")
id("com.google.dagger.hilt.android")
}
dependencies {
implementation("androidx.hilt:hilt-navigation-compose:1.2.0")
implementation("com.google.dagger:hilt-android:2.51.1")
kapt("com.google.dagger:hilt-android-compiler:2.51.1")
}
kapt {
correctErrorTypes = true
}
一段时间后,我决定再次删除它,因为构建时间增加,并且课程不再需要它。
我现在的问题是,该 gradle 仍然执行以下任务:kaptGenerateStubsDebugAndroidTest、kaptGenerateStubsDebugKotlin、kaptReleaseKotlin、kaptReleaseUnitTestKotlin 等等
如何找出执行这些任务的原因?可能是因为 Compose?我已经建立了一个新项目,但这些项目不存在。
运行 ./gradlew help --task [OneOfTheMentioned] 并没有真正帮助:
> Task :help
Detailed task information for kaptReleaseKotlin
Path
:app:kaptReleaseKotlin
Type
KaptWithoutKotlincTask (org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask)
Options
--rerun Causes the task to be re-run even if up-to-date.
Description
-
Group
-
kaptGenerateStubsDebugKotlin 使构建时间延长了一倍,并且构建分析器(它也警告我)说:
Reason task ran: Value of input property 'compilerOptions.freeCompilerArgs' has changed for task ':app:kaptGenerateStubsDebugKotlin'
我已经做过的事情:
sync with files
clean
rebuild
deleted .gradle Folder
Android Studio 考拉 | Ubuntu Mate 上的 2024.1.1 补丁 1
经过一番研究,我找到了解决方案。
您可以通过以下命令获得每个任务的列表以及任务的来源:
./gradlew app:dependencies [app was in my case the module name]