diff --git a/buildSrc/src/main/java/KaptConfigs.kt b/buildSrc/src/main/java/KaptConfigs.kt index 3d0e7745..818ad1a2 100644 --- a/buildSrc/src/main/java/KaptConfigs.kt +++ b/buildSrc/src/main/java/KaptConfigs.kt @@ -8,10 +8,24 @@ import org.jetbrains.kotlin.gradle.plugin.KaptExtension internal fun Project.configureKapt() { extensions.configure { javacOptions { - option("-Adagger.fastInit=enabled") - option("-Adagger.experimentalDaggerErrorMessages=enabled") - option("-Xmaxerrs", 500) - option("-Adagger.moduleBindingValidation=ERROR") + if (hasDaggerCompilerDependency) { + option("-Adagger.fastInit=enabled") + option("-Adagger.strictMultibindingValidation=enabled") + option("-Adagger.experimentalDaggerErrorMessages=enabled") + option("-Xmaxerrs", 500) + option("-Adagger.moduleBindingValidation=ERROR") + } } + // disable kapt tasks for unit tests + tasks.matching { + it.name.startsWith("kapt") && it.name.endsWith("UnitTestKotlin") + }.configureEach { enabled = false } } } + +private val Project.hasDaggerCompilerDependency: Boolean + get() = configurations.any { + it.dependencies.any { dependency -> + dependency.name == "dagger-compiler" + } + }