Как использовать Gradle BoM с процессором аннотаций? - PullRequest
1 голос
/ 24 февраля 2020

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

Could not determine the dependencies of task ':app:kaptDebugKotlin'.
> Could not resolve all task dependencies for configuration ':app:kapt'.
   > Could not find com.google.dagger:dagger-compiler:.
     Required by:
         project :app

Например, с этим модулем платформы (:bom):

plugins {
  id 'java-platform'
}
dependencies {
  constraints {
    api 'com.google.dagger:dagger:2.25.2'
    api 'com.google.dagger:dagger-compiler:2.25.2'
  }
}

Я получаю эту ошибку, когда я использую его, как это в модуль приложения:

dependencies {
  implementation platform(project(':bom'))
  implementation 'com.google.dagger:dagger'
  kapt 'com.google.dagger:dagger-compiler'
  // ...
}

Я получаю ту же ошибку, если использую annotationProcessor. Если я устанавливаю версию как kapt 'com.google.dagger:dagger-compiler:2.25.2', все работает.

Что я делаю не так? Могу ли я использовать BoM для kapt или annotationProcessor?

1 Ответ

2 голосов
/ 02 марта 2020

вам не хватает kapt platform(project(':bom'))

kapt не включает зависимости от реализации, поэтому не включает и платформу

...