突然我开始得到这个错误,我不知道为什么如果有人告诉我这个错误在哪里,就足够有帮助了。正如我所能得到的,这是因为android studio的新更新。 我得到的错误的详细总结。

Task :app:kaptDebugKotlin
    ANTLR Tool version 4.5.3 used for code generation does not match the current runtime version 4.7.1ANTLR Runtime version 4.5.3 used for parser compilation does not match the current runtime version 4.7.1ANTLR Tool version 4.5.3 used for code generation does not match the current runtime version 4.7.1ANTLR Runtime version 4.5.3 used for parser compilation does not match the current runtime version 4.7.1C:\Users\shubh\Downloads\MarginCalculator\app\build\generated\source\kapt\debug\com\kotlin_developer\margincalculator\DataBinderMapperImpl.java:10: error: cannot find symbol
    import com.kotlin_developer.margincalculator.databinding.FragmentCalculatorScreenBindingImpl;

    symbol:   class FragmentCalculatorScreenBindingImpl

    Task :app:kaptDebugKotlin FAILED
    location: package com.kotlin_developer.margincalculator.databinding
    FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution
   > java.lang.reflect.InvocationTargetException (no error message)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 17s
29 actionable tasks: 27 executed, 2 up-to-date

当前回答

在我的例子中,我添加了这一行

 android {
    .
    .
    .

    kapt.includeCompileClasspath = false

 }

其他回答

对我来说,问题是在模型上定义了两个主键。

// before    
@field:ColumnInfo(name = "id") @field:PrimaryKey(autoGenerate = true) var id: Long = 0,
@field:ColumnInfo(name = "name") @field:PrimaryKey var name: String,
    
//after
@field:ColumnInfo(name = "id") @field:PrimaryKey(autoGenerate = true) var id: Long = 0,
@field:ColumnInfo(name = "name") @field:NotNull var name: String,

我不得不重新构建项目并稍微更改Dao类以触发有关问题的消息。

找出潜在问题的方法是运行以下命令:

./gradlew assembleDebug --stacktrace

在经历了许多痛苦之后,我决定尝试annotationProcessor而不是kapt,希望它至少可以显示错误消息或任何可以帮助我定位源代码的东西。但幸运的是(或不幸的是;由于浪费了时间),它成功地建立了,没有任何错误。 这主要是kapt本身的一个bug。所以,试试这个方法,它可能会有帮助。

如果有人面临这个错误,由于添加测试依赖柄(这是我面临这个错误的原因) 确保正常依赖项和测试依赖项的版本相同

// Hilt Dependency 实现“com.google.dagger: hilt-android: 2.38.1” kapt com.google.dagger: hilt-compiler: 2.38.1

//测试柄 androidTestImplementation com.google.dagger: hilt-android-testing: 2.38.1 kaptAndroidTest com.google.dagger: hilt-android-compiler: 2.38.1

此错误也是由于数据绑定错误造成的

检查变量是否指向正确的数据类 检查视图的字段(文本视图、可见性是否正确) 您已经导入了正确的导入(例如与可见性相关的操作)