如何使Dagger2编译器选项正常工作?

时间:2019-03-05 05:17:08

标签: android gradle android-gradle dagger-2 dagger

我正在尝试在我的android项目中使用dagger2编译器选项中的3个。 但似乎它们都不起作用。

我已将here中的代码粘贴到我的gradle.properties甚至AS设置的编译器选项中。

我感兴趣的3个是:

-Adagger.fastInit=enabled
-Adagger.formatGeneratedSource=disabled
-Adagger.gradle.incremental

fastinit和codeformatting根本不起作用(根据生成的代码判断),但是增量会导致编译错误,提示:

no compiler option found.

我使用的版本是:

匕首:2.18

等级:5.2.1

kotlin:1.3.21

androidPlugin:3.3.1

2 个答案:

答案 0 :(得分:0)

也许您应该尝试不使用“ A”

dagger.fastInit=enabled
dagger.formatGeneratedSource=disabled
dagger.gradle.incremental=enabled

也可以直接在build.gradle中尝试,但这应该针对每个项目完成。

kapt {
    arguments {
        arg('dagger.fastInit', 'enabled')
        arg('dagger.formatGeneratedSource', 'disabled')
        arg('dagger.gradle.incremental', 'enabled')
    }
}

答案 1 :(得分:0)

对于具有多个模块的项目,可以使用此更新顶部build.gradle

allprojects {
    repositories {
        ...
    }

    afterEvaluate {
        extensions.findByName('kapt')?.arguments {
            arg( "dagger.formatGeneratedSource", "disabled" )
        }
    }
}