Beim Ausführen von org.jetbrains.kotlin.gradle.internal.KaptExecution ist ein Fehler aufgetreten

101

Plötzlich bekomme ich diesen Fehler und ich bekomme keine Ahnung, warum es hilfreich genug ist, wenn jemand mich nur wissen lässt, wo dieser Fehler liegt. So viel ich bekommen kann, ist dies aufgrund des neuen Updates von Android Studio. Detaillierte Zusammenfassung des Fehlers, den ich erhalte.

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
Shubham Tater
quelle
Bitte zeigen Sie Ihren Code in der build.gradleDatei.
Sergey
Bitte zeigen Sie auch den DataBinderMapperImpl.java-Code an.
Sergey
3
Haben Sie auf Android Studio 4 aktualisiert? gleiche Seite hier
Samuel Eminet
2
Ich habe auf Android Studio 4 aktualisiert und habe den gleichen Fehler bei der Verwendung von Room erhalten. Ich konnte ihn vorübergehend beheben, indem ich eine meiner Abfragen änderte. Ich hatte anfangs diese Abfrage: "SELECT case_name FROM SavedCases" und änderte sie dann in "SELECT * FROM SavedCases", und die Fehlermeldung verschwand. Aus irgendeinem Grund wird dieser Fehler nur angezeigt, wenn ich versuche, nur bestimmte Spalten abzufragen. Dies ist keine ideale Lösung für das Problem und ich hoffe, jemand hat eine bessere Lösung.
Hani
Ich hatte einen ähnlichen Fehler und fand eine Lösung, die für mich funktioniert. Sie könnten etwas Ähnliches getan haben. stackoverflow.com/questions/63133657/…
Mustaqode

Antworten:

139

Die Benutzeroberfläche von Android Studio hat den Fehler nur ausgeblendet ...

Wenn der Fehler auftrat, wurde das Element in der Listenansicht hervorgehoben und in der Terminalansicht eine nicht hilfreiche Meldung angezeigt. schlecht schlecht

Um den tatsächlichen Fehler zu finden, wählen Sie das Stammelement in der Listenansicht aus, damit Android Studio die gesamte Build-Ausgabe in der Terminalansicht anzeigt, und scrollen Sie dann, um den Fehler zu finden. gut gut

Eric
quelle
3
Wenn Sie einen DB-Fehler (Compile-Time Room) haben, wird dieser so angezeigt - das bedeutet, dass eine oder einige Ihrer Abfragen falsch sind
Idan Damri
Ich denke, es wird für jeden DB-Fehler zur Kompilierungszeit so angezeigt ... in meinem Fall war es ein Realm-DB-Fehler zur Kompilierungszeit über ein falsch eingerichtetes Entitätsobjekt ...
Eric
51

Vielleicht bin ich etwas spät dran für die Antwort, aber trotzdem habe ich den gleichen Fehler bekommen. Der Build-Fehler kann durch einen Fehler verursacht werden, auf den Android Studio wahrscheinlich aufgrund der sehr großen Projektgröße nicht hinweist.

Hier ist der einfache Weg, um auf den genauen Fehler hinzuweisen.

  1. Gehen Sie in Android Studio zum Menü Analysieren und klicken Sie auf Code überprüfen . Überprüfen Sie das gesamte Projekt, klicken Sie auf OK und warten Sie, bis die Inspektion abgeschlossen ist.

    Code überprüfen

  2. Jetzt sehen Sie eine Registerkarte, die alle Fehler, Warnungen usw. anzeigt, und Sie können jetzt das eigentliche Problem beheben.

    Registerkarte Fehler

Ashir Mehmood
quelle
2
Ja, es zeigt genau Fehler. (Ich habe einen Fehler in XML gemacht)
Hari Shankar S
1
Ich verstehe nicht, warum Android Studio den Fehler nicht direkt anzeigt, wenn ein Build fehlschlägt, es macht keinen Sinn. Danke dafür, hat mir sehr geholfen
moyo
29

Um herauszufinden, was das zugrunde liegende Problem ist, führen Sie den folgenden Befehl aus:

./gradlew assembleDebug --stacktrace
toobsco42
quelle
15

Ich habe das gleiche Problem, also habe ich versucht, mehr Informationen zu erhalten

gradle-> app-> Aufgaben-> Build-> montieren

Danach bekam ich den genauen Fehler "Fehler bei der Verarbeitung von Anmerkungen". Ich habe meine kürzlich optimierte DAO-Klasse überprüft und festgestellt, dass einer der Methodenrückgabetypen nicht definiert wurde.

//Before
@Query("SELECT countryName FROM country_table WHERE countryCode= :code")
    fun getCountryNameForCode(code: String)

//After
@Query("SELECT countryName FROM country_table WHERE countryCode= :code")
    fun getCountryNameForCode(code: String): String
Ajay Gurappanavar
quelle
gradle->app->Tasks->Build->assemblewas ist das?
user25
@ user25 Gradle-Werkzeugfenster
Ajay Gurappanavar
14

Ich hatte den gleichen Fehler für eine Weile, dann begann ich die anderen Pakete zu überprüfen, von denen ich erfuhr, dass ich einen Tippfehler in meinem Datenbankcode gemacht habe. Also, "Durchsuchen Sie Ihre Datenbank und andere Aktivitätsklassendateien und finden Sie dort möglicherweise einige Fehler."

ShankarAnand
quelle
4
Was für Fehler?
Mustaqode
Für mich war ein Fehler in der Navigationsgrafik
Jorge Casariego
In meinem Fall habe ich vergessen, @Daoin MyDao-Schnittstelle hinzuzufügen
Ishaan Kumar
11

Veränderung

implementation "android.arch.persistence.room:runtime:1.1.1"
kapt "android.arch.persistence.room:compiler:1.1.1"

Zu

 implementation "androidx.room:room-runtime:2.2.5"
 kapt  "androidx.room:room-compiler:2.2.5"
tuanvn91
quelle
erstaunlich, es hat geholfen
user25
8

Wenn Sie ein Upgrade auf den Klassenpfad 'com.android.tools.build:gradle:4.0.0' durchgeführt haben, ersetzen Sie die vorherige Version

dependencies {
    classpath 'com.android.tools.build:gradle:3.6.3'
}

Und ändern Sie gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-   all.zip`
Mujeeb Rahaman T.
quelle
16
Dies ist nicht die richtige Lösung
Shubham Tater
2
@ShubhamTater Dies ist eine Lösung, bis gradle4.0.0 behoben werden soll. Dies ist die vorübergehende Lösung. Sobald gradle4.0.0 behoben ist. Wir können den Gradle 4.0 oder mehr
aktualisieren
3
Ich habe diese Ausnahme am 4.0.1
Ярослав Нестеров
8

Für mich haben eine Reihe von Referenzfehlern und ein Fehler in den XML-Ausdrücken DataBindingdiesen Fehler verursacht.

Ich habe ein <variable/>in einer layoutDatei gelöscht , weil ich dachte, ich brauche es nicht mehr. Ich habe vergessen, dass ich die Variable in der layoutDatei referenziert hatte .

Nach dem Erstellen des Projekts wurde ein Fehler ausgegeben, bei dem die BindingImplKlasse nicht importiert werden konnte , da sie nicht vorhanden ist und dieser Fehler nur als Warnung parallel zum obigen KaptExecutionFehler angezeigt wurde .

Nachdem ich eine Weile gesucht hatte, fand ich diesen Fehler und löste ihn. Dann wurde eine Reihe von Referenzfehlern angezeigt, da ich etwas umbenannt habe und es in den FragmentDateien nicht umbenannt wurde . Nachdem auch diese Fehler behoben wurden, wurde der Build für mich ohne Fehler oder Warnungen beendet.

René Spies
quelle
1
Richtig, dieser Fehler bezieht sich immer auf die XML-Datei, die unsere Datenbindung verwendet.
Shubham Tater
3

Ich hatte das gleiche Problem. In meinem Fall ging es um die Datenbank. Ich musste diese Codezeile ändern @Database(entities = [SearchedLocation::class, FavoriteLocation::class], version = 1)

Ich habe eine weitere Tabelle in der Datenbank hinzugefügt, aber vergessen, eine Tabelle in der obigen Zeile hinzuzufügen.

Konstantinos Evangelidis
quelle
2

In meinem Fall habe ich Raum verwendet und eine meiner databaseDao-Methoden hat einen nicht verwendeten Parameter und leider warnt mich Android Studio nicht richtig

vahid
quelle
1

Ich hatte das gleiche Problem. Lassen Sie mich Ihnen das Beispiel zeigen, wie ich zu dem Problem gekommen bin und wie ich es gelöst habe. Vielleicht können Sie sich ein größeres Bild machen.

Vor dem Auflösen

@Entity(tableName = "modules")
data class Module
(
    @PrimaryKey val id: Int,
    val name: String
)

@Entity(tableName = "sessions")
data class Session
(
    @PrimaryKey(autoGenerate = true) var id: Int,
    @ColumnInfo(name = "module_id") val moduleId: Int,
    @ColumnInfo(name = "start_time") val startTime: String,
    @ColumnInfo(name = "end_time") val endTime: String
)

data class ModuleSession
(
    @Embedded val module: Module,
    @Relation(
        parentColumn = "id",
        entityColumn = "module_id"
    )
    val sessions: List<Session>,
    @ColumnInfo(name = "is_updated") val isUpdated: Boolean = false // The problem
)

In der DAO

@Transaction
@Query("SELECT * FROM modules")
abstract suspend fun getModuleSession(): List<ModuleSession>

Der Fehler, den ich bekam, war

A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution

Also habe ich tiefer gegraben und die folgende Nachricht gefunden

The columns returned by the query does not have the fields [isUpdated] in com.gmanix.oncampusprototype.Persistence.ModuleSession even though they are annotated as non-null or primitive. Columns returned by the query: [id,name]
    public abstract java.lang.Object getModuleSession(@org.jetbrains.annotations.NotNull()

Ich habe das Feld IsUpdated aus der POJO ModuleSession entfernt und es der Sitzungstabelle hinzugefügt

Nach Änderungen

@Entity(tableName = "sessions")
data class Session
(
    @PrimaryKey(autoGenerate = true) var id: Int,
    @ColumnInfo(name = "module_id") val moduleId: Int,
    @ColumnInfo(name = "start_time") val startTime: String,
    @ColumnInfo(name = "end_time") val endTime: String,
    @ColumnInfo(name = "is_updated") val isUpdated: Boolean = false
)

data class ModuleSession
(
    @Embedded val module: Module,
    @Relation(
        parentColumn = "id",
        entityColumn = "module_id"
    )
    val sessions: List<Session>
)

Überprüfen Sie andererseits, ob die SELECTAnweisung ein Feld enthält, bei dem ein Verdächtiger Probleme verursacht, oder mit dem Sie es kommentieren können@Ignore

Sie können Ihren Code jedoch veröffentlichen, wenn Sie sich immer noch nicht wohl fühlen.

Ich hoffe das könnte helfen

Ali
quelle
Ich habe die Lösung für mein Problem gefunden. Ich weiß nicht, ob es für Sie funktioniert oder nicht, aber die Lösung besteht darin, Ihre XML-Datei zu überprüfen, die Sie binden. Die Bindung ist ein System zur Kompilierungszeit und funktioniert für XML-Dateien. Überprüfen Sie daher, ob sie vorhanden sind Ist ein Fehler darin, wird diese Art von Fehler angezeigt. Ich korrigiere meine XML-Datei, dann funktioniert alles perfekt.
Shubham Tater
1
Ja bitte. Wie hast du tiefer gegraben?
Simo Nyathi
1
@LeonardoSibela Entschuldigung, ich wollte beim Erstellen die Option --stacktrace hinzufügen, damit ich mehr Informationen über den Fehler erhalten kann.
Ali
Sie können die Option --stacktrace über Datei-> Einstellungen-> Erstellen, Ausführen, Bereitstellen-> Compiler-> Befehlszeilenoptionen hinzufügen. In meinem Fall fehlte mir übrigens eine Abhängigkeit: Implementierung "androidx.room:room-ktx:$ room_version "
Amber
1

Rufen Sie die Antwort von @Rene Spies oben an, ich habe diesen Fehler auch beim Arbeiten mit der Datenbindung erhalten. Es stellt sich heraus, dass die Build-Engine es nicht mag, wenn Sie die @BindableAnnotation in ein Feld im primären Konstruktor von a data classin Kotlin einfügen.

Also mach niemals Folgendes:

data class MyAwesomePojo(
    @Bindable
    var firstname: String,
    var lastname: String
)

Stattdessen müssen Sie Folgendes tun:

data class MyCorrectAwesomePojo(
    var lastname: String
):{
    @get:Bindable
    var firstname: String
        set(value){
            field = value
        }
}

Bonus: Denken Sie daran, vor dem Setzen des Werts auf das Feld nach denselben Werten zu suchen, wenn Sie versuchen, eine bidirektionale Bindung wie ich zu verwenden, um eine Endlosschleife beim Setzen und Abrufen zu verhindern.

EAM
quelle
Ich habe die Lösung für mein Problem gefunden. Ich weiß nicht, ob es für Sie funktioniert oder nicht, aber die Lösung besteht darin, Ihre XML-Datei zu überprüfen, die Sie binden. Die Bindung ist ein System zur Kompilierungszeit und funktioniert für XML-Dateien. Überprüfen Sie daher, ob sie vorhanden sind Ist ein Fehler darin, wird diese Art von Fehler angezeigt. Ich korrigiere meine XML-Datei, dann funktioniert alles perfekt.
Shubham Tater
1

Interessanterweise wurde dieser Fehler angezeigt, weil ich die Beschreibung des Nachrüstens hinzugefügt habe. Achten Sie darauf, die Beschreibung von Raum und Nachrüstung nicht zu verwechseln.

kzncrda
quelle
1

In meinem Fall lag es daran, dass ich Observable nicht in meinem ViewModel implementiert habe. Ich habe dem Constraint-Layout mit einen EditText hinzugefügtandroid:text="@={addProductViewModel.inputProductName}"

Nach der Implementierung Observablein meiner ViewModel-Klasse war der Fehler behoben

ViewModel

class AddProductViewModel (
    private val repository: ProductRepository,
    private val context: Context
): ViewModel(), Observable {

    @Bindable
    val inputProductName = MutableLiveData<String>()


    fun addProduct() {
        //inputProductName.value
    }

    override fun removeOnPropertyChangedCallback(callback: Observable.OnPropertyChangedCallback?) {
        TODO("Not yet implemented")
    }

    override fun addOnPropertyChangedCallback(callback: Observable.OnPropertyChangedCallback?) {
        TODO("Not yet implemented")
    }
}

Vollständiges Beispiel für die MVVM-Datenbindung mit Fragmenten

Layout - add_product.xml

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:android="http://schemas.android.com/apk/res/android" >
    <data class=".AddProductBinding">
        <variable
            name="addProductViewModel"
            type="com.rao.iremind.AddProductViewModel" />
    </data>

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">


        <EditText
            android:id="@+id/editTextTextProductName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:hint="Product name"
            android:inputType="textPersonName"
            android:text="@={addProductViewModel.inputProductName}"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />



    </androidx.constraintlayout.widget.ConstraintLayout>
</layout>

AddProductFragment

class AddProductFragment: Fragment() {
    private lateinit var binding: AddProductBinding
    private lateinit var addProductViewModel: AddProductViewModel
    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        binding =  DataBindingUtil.inflate(inflater, R.layout.add_product, container, false)
        val dao = SubscriberDatabase.getInstance(requireActivity().applicationContext).productDAO
        val repository = ProductRepository(dao)
        val factory = AddProductViewModelFactory(repository, requireActivity().applicationContext)
        addProductViewModel = ViewModelProvider(this, factory).get(AddProductViewModel::class.java)
        binding.addProductViewModel = addProductViewModel
        binding.lifecycleOwner = this
        val view = binding.root

        return view
    }
}

AddProductViewModel

class AddProductViewModel (
    private val repository: ProductRepository,
    private val context: Context
): ViewModel(), Observable {

    @Bindable
    val inputProductName = MutableLiveData<String>()


    fun addProduct() {
        //inputProductName.value
    }

    override fun removeOnPropertyChangedCallback(callback: Observable.OnPropertyChangedCallback?) {
        TODO("Not yet implemented")
    }

    override fun addOnPropertyChangedCallback(callback: Observable.OnPropertyChangedCallback?) {
        TODO("Not yet implemented")
    }
}

Hoffe das hilft R.

BRDroid
quelle
1

In meinem Fall: Problem behoben

Schritte:

  1. ViewModel-Variable entfernen - In XML .
<variable
    name="viewModel"
    type="com.xx.AppViewModel" / >
  1. Alle viewModel-Bindungsreferenzen entfernt - In XML .
android:text="@{viewModel.simName}"
  1. ViewModel-Instanzverweis auf die Bindungszuordnung - In Aktivität entfernt
binding.viewModel = viewModel
  1. Projekt bereinigen und neu kompilieren.

  2. ViewModel-Variable hinzufügen - Im XML & Build-Projekt .

< variable
    name="viewModel"
    type="com.xx.AppViewModel" / >
  1. Fügen Sie der Bindungszuordnung einen ViewModel-Instanzverweis hinzu - In Activity & Build-Projekt
binding.viewModel = viewModel
  1. Alle viewModel-Bindungsreferenzen hinzufügen - Im XML & Build-Projekt. .
    android:text="@{viewModel.simName}"
  1. Es wird jetzt funktionieren.

- Ich hoffe es wird auch für dich funktionieren.

V-9- द
quelle
1

Ich hatte das gleiche Problem mit Room und habe viewBinding nicht verwendet .
Ich habe es behoben , indem ich exportSchema in meiner Datenbankklasse auf false gesetzt habe.

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

Denken Sie daran: exportScehma kann je nach Anwendungsfall variieren. Im Allgemeinen bleibt es falsch, also setze ich es auf false.

USMAN Osman
quelle
1

In meinem Fall habe ich eine Variable UserManager global in NetWorkManager geändert und überall dort, wo UserManager-Klassen vorhanden waren, wurden sie zu NetworkManager.

Da ich Hilt verwende, musste ich das Projekt erneut erstellen.

Ich habe das Projekt gereinigt und Kotlin hat gezeigt, wo die Fehler waren.

Dimitri de Jesus
quelle
1

Ich hatte auch das gleiche Problem, also habe ich einfach versucht, den .idea-Ordner und den .gradle-Ordner des Projekts zu löschen. Dann habe ich auch den Build-Ordner im App-Ordner gelöscht und dann die Android Studio-IDE neu gestartet, und es funktioniert für mich

fahad.t
quelle
1

Für mich bestand das Problem darin, dass zwei Primärschlüssel im Modell definiert waren.

// 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,

Ich musste das Projekt neu erstellen und die Dao-Klasse ein wenig ändern, um die Meldung über das Problem auszulösen.

Denis Korobitsin
quelle
1

Für mich war es der primäre Konstruktor in einer Datenbankeintragsklasse

Dan Alboteanu
quelle
1

Diese Methode fällt mir alles ein, wo es ein Problem mit der RoomDatenbank gibt und Coroutinessogar Rechtschreibfehler. Zuletzt beim Versuch, einen einzelnen Wert mit einem Flow nach der eingefügten Spalte zurückzugeben, von: Flow<Long>aus DAOs-Klassen.

Es sollte eine suspendFunktion und nur ein LongTyp sein, der nach der eingefügten Spalte zurückgegeben wird.

Diese Probleme sind manchmal nicht eindeutig. Versuchen Sie daher, alle Build Output-Nachrichten zu lesen. Die Nachricht, die mir geholfen hat, war: error: Not sure how to handle insert method's return type.

MohammadL
quelle
1

Nichts hat funktioniert Ich habe alles versucht und schließlich einen kleinen Fehler gefunden, der ein großes Problem verursachte.

Gehen Sie zurück zu jeder neu erstellten Datei für die Datenbank und suchen Sie zeilenweise nach Code für jede Datei.

Überprüfen Sie die Datenbankklasse und prüfen Sie, ob Dao wie folgt deklariert ist:

abstract val commentDatabaseDao: CommentDatabaseDao

Als val not var deklarieren , das war in meinem Fall und schließlich dafür gelöst.

Sachin Harne
quelle
1

Mir ist das gerade passiert. Ein anderer Entwickler hatte eine Zusammenführung nicht ordnungsgemäß abgeschlossen, sodass diese Zeile im Code enthalten war

<<<<<<< HEAD

Anstatt einen Kompilierungsfehler zu erhalten, wurde der KaptExecution-Fehler angezeigt.

Kevin
quelle
1

Nach vielen Schmerzen habe ich mich entschlossen, es zu versuchen, annotationProcessoranstatt zu kapthoffen, dass zumindest eine Fehlermeldung oder etwas anderes angezeigt wird, das mir beim Auffinden der Quelle helfen kann. Aber zum Glück (oder leider; wegen der verschwendeten Zeit) wurde es ohne Fehler erfolgreich gebaut. Es ist meistens ein Fehler an kaptsich. Probieren Sie diese Lösung aus und sie kann helfen.

Salih Kavaf
quelle
1

Wirklich liegt das Problem in der Typografie in Ihrem Code. Ich musste aufhören, das kapt-Plugin zu verwenden. Ich habe dann auf annotationProcessor umgestellt. Es wurde klar angegeben, was der Fehler nach dem Bau war.

Sie können dann wieder zur Verwendung von kapt wechseln, nachdem Sie den Fehler behoben haben.

Für mich war der Fehler, dass ich versehentlich versucht habe, Daten in einer Textansicht in beide Richtungen zu binden.

Mohammed Ahmed
quelle
1

Ich hatte den gleichen Fehler. Ich hatte zwei Probleme.

  1. Möglicherweise müssen Sie hinzufügen

    Implementierung 'androidx.room:room-ktx:2.2.5'

  2. Ich hatte eine Datei gelöscht, auf die in einer der Datei activity_xml als Mitglied verwiesen wurde. Der Fehler gab mir nie einen Hinweis, bis ich ihn in annotationProcessor anstelle von kapt änderte. Dann wies er auf den Fehler hin, fand die Datei und hatte mit Sicherheit einen Verweis auf eine Datei, die ich nicht mehr verwendete und die gelöscht wurde. Ich habe diese Datenreferenz aus der XML entfernt und sie hat alles geklärt. Dann habe ich es wieder auf kapt gesetzt.

Sam
quelle
0

In einigen Fällen kann es helfen, gradle.properties

kapt.include.compile.classpath=true
Sergei Maleev
quelle
0

In meinem Fall habe ich diese Zeile hinzugefügt

 android {
    .
    .
    .

    kapt.includeCompileClasspath = false

 }
Mojtaba Haddadi
quelle
0

Ich habe gerade die Android Studio IDE auf die Version 4.1.1 aktualisiert und ein ähnliches Problem festgestellt.

Was mir klar wurde war…

… Bevor ich keine *_ImplKlassen hatte (ich kenne sie in Kotlin) und nicht einmal einige neue *TestsKlassen.

Nachdem ich "all the world" ausgeführt hatte, um eine Lösung zu finden, traf ich eine intuitive und faire Entscheidung: Ich löschte alle Dateien in meinen "handgefertigten" Paketen, die vor dem Android Studio-Update nicht vorhanden waren .

Und rate was?

Es funktionierte. Keine Probleme, nicht einmal ein Problem kapt.

Ich sage nicht, dass es eine endgültige Lösung ist. Aber es kann für Sie funktionieren.

Hab einen guten.

Thiengo
quelle