You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级AGP至3.6.1后ButterKnife触发AnnotationProcessorOnCompilePath警告的正确修复方案

我之前升级Android Gradle Plugin到3.6.1版本时,也碰到过一模一样的问题——明明按照ButterKnife官方要求配置了依赖,执行./gradlew lint却还是弹出AnnotationProcessorOnCompilePath警告。其实这是AGP 3.6.x版本的Lint规则更严格后产生的误判,下面给你两个靠谱的修复方法:

方案1:全局调整Lint规则,一次性解决误报

如果这个警告对你的项目没有实际参考价值,最省心的方式是直接在app/build.gradle里禁用这个容易误判的Lint检查项:

android {
    // 保留你原本的其他配置
    lintOptions {
        disable 'AnnotationProcessorOnCompilePath'
    }
}

这样整个项目都不会再触发这个警告,不用挨个依赖加抑制注释。

方案2:针对单个依赖精准抑制

如果你不想全局禁用规则,只想处理这一处警告,那可以继续用你提到的临时方案,这里帮你理清楚逻辑:

dependencies {
    // 其他依赖保持不变
    //noinspection AnnotationProcessorOnCompilePath
    implementation 'com.jakewharton:butterknife:10.2.1'
    kapt 'com.jakewharton:butterknife-compiler:10.2.1'
}

这个注释只会抑制当前依赖的该警告,不会影响其他代码的Lint检查。

补充说明:为什么会出现这个警告?

AGP 3.6.x升级了Lint对注解处理器路径的检查逻辑,它误把包含注解定义的butterknife核心库当成了注解处理器依赖,要求将其移到annotationProcessor(或kapt)路径中。但实际上butterknife库包含了运行时必需的核心逻辑和注解定义,必须放在implementation配置里;而真正的注解处理器butterknife-compiler你已经正确配置在kapt下了,所以这完全是Lint的误判。

内容的提问来源于stack exchange,提问作者IliaEremin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 08:02:42