gpt4 book ai didi

android - 如何让 Dagger 和 Butterknife 与 Gradle 一起工作?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:54:24 25 4
gpt4 key购买 nike

我的项目与 Butterknife 配合得很好做 View 注入(inject)。但我随后需要添加 Dagger以便注入(inject)依赖项。

我添加了 Annotation Processor Tool具有适当 Dagger 要求的 Gradle 插件(为简洁起见,仅显示修改的部分);

buildScript {
repositories {
maven {
url "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
...
classpath 'com.jimdo.gradle:gradle-apt-plugin:0.2-SNAPSHOT'
}
}

apply plugin: 'apt'

dependencies {
apt "com.squareup.dagger:dagger-compiler:${daggerVersion}"

...
}

此时,当我构建并运行应用程序时,标有 @InjectView 注释的属性不会被注入(inject) Butterknife 发出的以下调试消息;

D/ButterKnife﹕ Looking up view injector for com.example.MainActivity
D/ButterKnife﹕ Not found. Trying superclass com.example.FactListAbstractActivity
D/ButterKnife﹕ Not found. Trying superclass android.app.Activity

最佳答案

事实证明,我需要做的就是添加另一个 apt 依赖项,以便让 Annotation Processor Tool 拾取 Butterknife 中包含的处理器。这是除了将其作为编译时依赖项包括在内;

dependency {
apt "com.jakewharton:butterknife:${butterknifeVersion}"

compile "com.jakewharton:butterknife:${butterknifeVersion}"
}

关于android - 如何让 Dagger 和 Butterknife 与 Gradle 一起工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20742900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com