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

其他回答

尝试用

kapt.use.worker.api=false 

在你的gradle里。属性设置文件

参考:https://youtrack.jetbrains.com/issue/kt - 40750

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

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

在我的情况下,我使用协程,但我忘记添加Kotlin扩展和协程支持的房间

Def room_version = "2.2.6" 实现“androidx.room: room-ktx: room_version美元”

这个答案对于那些在同一台机器(WINDOWS操作系统)上从一个帐户(用户)切换到另一个用户的人很有用。

我也遇到过类似的问题

failure occurred while executing org.jetbrains.kotlin.gradle.internal.kaptwithoutkotlinctask

但理由是拒绝批准下面的文件

C:\Android\.gradle\caches\modules-2\files-2.1\com.android.tools.build.jetifier\jetifier-core\1.0.0-beta09\c98ee0e5579aed97e17f605a89b101115a2f5a61\jetifier-core-1.0.0-beta09.jar

问题场景

我所做的是,复制C:\Android。Gradle \从我以前的机器到新机器。我在新机器上使用的用户帐户是X,我创建了一个新帐户,然后删除了帐户X。

由于X是所有者,新帐户在权限方面存在问题。

解决方案是更换所有权或删除C:\Android。gradle\让Android Studio(AS)下载相同。 出于同样的原因,我在承诺时也遇到了所有权问题。 为了避免任何进一步的问题,我删除了C:\Android(其中包括.gradle, . Android, C:\Android\Local\Android\Sdk文件夹)重新安装了Android Studio。

Git子模块更新失败,提示“致命:在存储库中检测到可疑的所有权”

当我试图在一个活动中使用刀柄注入一个私有字段时,发生了这种情况。解决方案是删除private关键字,以便更改

@Inject
private lateinit var appAnalytics: AppAnalytics

to

@Inject
lateinit var appAnalytics: AppAnalytics