突然我开始得到这个错误,我不知道为什么如果有人告诉我这个错误在哪里,就足够有帮助了。正如我所能得到的,这是因为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

当前回答

如果你安装了新的kotlin插件(1.4.20-release-Studio4.1-1)并安装了dagger (kapt 'com.google.dagger:dagger-compiler:2.30'),也会出现这个问题。在这种情况下,一种解决方案可能是用视图绑定替换已弃用的插件:'kotlin-android-extensions' (https://developer.android.com/topic/libraries/view-binding)

其他回答

我也犯了同样的错误。 我有两个问题。

您可能需要添加 实现“2.2.5 androidx.room: room-ktx)” 我删除了一个在activity_xml文件中作为成员引用的文件。这个错误从来没有给我任何线索,直到我把它改为annotationProcessor而不是kapt,然后它指出了错误,我找到了这个文件,果然我有一个引用到一个我不再使用并被删除的文件。我从xml中删除了这个数据引用,并将其全部清除。然后我把它放回去。

在升级到kotlin_version = '1.4.31'(从1.3.71)时得到完全相同的错误

以下moshi升级修复了我的问题:

implementation("com.squareup.moshi:moshi:1.11.0")
kapt("com.squareup.moshi:moshi-kotlin-codegen:1.11.0")

我有同样的问题与房间,我没有使用viewBinding。 我修复了它与使用exportSchema假在我的数据库类。

@Database(entities = [ModelClass::class], version = 1, exportSchema = false)
abstract class ModelDatabase: RoomDatabase() {}

记住:exportschemma可以根据你的用例而变化,通常它保持为假,所以我把它设置为假。

我刚刚将Android Studio IDE更新到4.1.1版本,并得到了类似的问题。

我意识到……

在我没有一些*_Impl类之前(我知道它们在Kotlin的东西中),甚至没有一些新的*Tests类。

所以,在“运行所有的世界”之后,我做出了一个直观而公平的选择:我删除了我的“手工构建”包中的所有文件,这些文件在Android Studio更新之前并不存在。

你猜怎么着?

它工作。没有问题,关于kapt一点问题都没有。

我并不是说这是最终的解决方案。但它可以为你工作。

祝你过得愉快。

在我的情况下,添加新的片段总是会导致这个错误弹出,我调查了我在git上的提交更改,结果发现,每当我创建一个新的片段时,Android都会自动更新gradle插件,尽管没有给予它这样做的权限,所以我不得不回滚到我最初的gradle插件版本的项目级别的构建。gradle文件:

from

类路径的org.jetbrains.kotlin: kotlin-gradle-plugin: 1.7.0

to

classpath“org . jetbrains kotlin kotlin-gradle-plugin: 1。6 . 21”

监控你的git变化,找出Android对你的gradle文件做了什么,导致它崩溃。