Почему после добавления kotlin kapt генерируются непонятные ошибки? - PullRequest
0 голосов
/ 15 января 2020

Я использовал DataBinding в моем проекте, но Android Studio показала предупреждение о том, что kotlin kapt должен быть включен. Хорошо, я добавил его, и мой файл gradle приложения теперь выглядит так:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
android {
    /// some standard things 
  dataBinding {
    enabled = true
  }

}

dependencies {
   kapt "com.android.databinding:compiler:3.5.3"
}

А вот мой файл gradle уровня проекта:

    buildscript {
      ext.kotlin_version = '1.3.61'
      repositories {
        google()
        jcenter()
        maven {
          url 'https://maven.fabric.io/public'
        }
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:3.5.3'
    classpath 'com.google.gms:google-services:4.3.3'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.2'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'io.fabric.tools:gradle:1.31.0'
  }
}

После этого я построил по проекту и это показало следующие ошибки:

/some_path_here/android/my_package/app/build/tmp/kapt3/stubs/debug/my_package_path/MyFileName cannot find symbol interface_name_here

Это интересно, но ошибки, подобные выше, происходят только для интерфейсов. Но не все интерфейсы в моем проекте, только для пары из них. Я не знаю, как решить эту проблему. Любые идеи?

1 Ответ

0 голосов
/ 15 января 2020

Похоже, я решил свою проблему. Я исследовал те файлы, где эта ошибка продолжает происходить. И оказалось, что у меня не было директивы package в этих файлах. И я даже удалил зависимость компилятора привязки данных (я не знаю, нужно ли это).

...