Kotlin卡普失败 – 只看到Android API级别1的来源

我看到一些奇怪的行为,导致:app:kaptQaDebugKotlin尝试升级到Android Gradle插件3.0时, :app:kaptQaDebugKotlin失败。

  • @TargetApi(VERSION_CODES.KITKAT)注解的方法失败, cannot find symbolVERSION_CODES.KITKAT
  • …但在与方法内联使用时发现VERSION_CODES.KITKAT
  • 找不到符号DialogInterface.OnShowListener (在API级别8中添加)
  • ..但找到DialogInteface.OnClickListener (在API级别1中添加)
  • 找不到符号Application.ActivityLifecycleCallbacks (在api level 14中添加)
  • 注意:Android Studio能够看到所有这些cannot find symbol类的来源( cmd + B作品)

版本

  • compileSdkVersion: 25
  • buildTools: 26.0.2
  • Kotlin版本: 1.1.51
  • AGP: 3.0.0
  • gradle包装: 4.3
  • 支持lib: 24.2.1 (这也难以升级,但是我尝试了25.4.0 ,仍然没有运气)
  • 匕首: 2.0.2 (卡在这个旧版本,不能升级不幸)
  • 使用AGP 3.0.0 java 8 desugar功能
  • 使用kotlin-kapt插件。 自动值类正确生成。

任何想法发生了什么? 它看起来像kapt任务是以某种方式使用Android API级别1的来源,我不知道如何解决这个问题

Per @pentarex

错误来自外部库logback-android-classic,我不得不排除组:'com.google.android',模块:'android

 implementation(libs.logbackAndroidClassic){ exclude group: 'com.google.android', module: 'android' }