40

我正在使用 Android Studio 2.2 Preview 7,Lombok 插件突然开始说: Annotation processing seems to be disabled for the project X,并提供设置链接。

在此处输入图像描述

单击通知不会将我带到正确的位置。

解决方法是什么?

4

10 回答 10

83

通过单击通知打开的设置是Per Project设置,在这种情况下,这些不是您需要的。

要解决此问题,请访问

  • File->Other Settings->Default Settings
  • 扩张Build, Execution, Deployment
  • 扩张Compiler
  • Annotation Processors检查中Enable annotation processing
  • 您可能需要重新打开项目才能使设置生效。
  • 享受

完整参考 - 带有适当设置屏幕的屏幕截图: 在此处输入图像描述

于 2016-08-12T07:05:37.613 回答
18

使用较新的 gradle 版本,将这些行键入应用程序的 build.gradle 的依赖项块中就足够了:`

compile "org.projectlombok:lombok:1.16.16"
annotationProcessor "org.projectlombok:lombok:1.16.16"  

将项目与 gradle 同步,它将起作用。

于 2017-06-19T15:45:53.083 回答
16

首先,我认为从欢迎屏幕中删除您的项目不会有任何影响。想想看,从该屏幕上的“最近的项目”中删除您的项目并不会重新创建它,更改默认设置如何对现有项目产生任何影响?

要在现有项目中启用注释处理,您无需删除任何内容。转到YourAwesomeProject/.idea/compiler.xml并确保您在以下属性中具有值“ true/project/annotationProcessing/profile@enabled ” :.

像这样:

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="CompilerConfiguration">
    ...
    <annotationProcessing>
      <profile default="true" name="Default" enabled="true"><!-- here -->
        <processorPath useClasspath="true" />
      </profile>
    </annotationProcessing>
  </component>
</project>

您可能需要File -> Invalidate Caches / Restart

于 2017-04-12T21:16:41.673 回答
7

对于那些使用 Android Studio 2.4+ 遇到相同问题的人,除了 Janis Peisenieks 回答之外,上述任何提示都无法解决。

打开您的 Intellij IDEA 2017 / Android Studio 2.4+ 并转到 (Windows)

  1. 文件->其他设置->默认设置
  2. 展开构建、执行、部署
  3. 展开编译器并选择注释处理器
  4. 确保启用注释处理并启用“从项目类路径获取处理器
  5. 最后但同样重要的是,使用下面的代码片段更新您的项目 build.gradle 文件。忽略它已弃用的提示,因为它没有使用(直到现在。请参阅问题)。

    defaultConfig {
        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath = true
            }
        }
    }
    

发现有一种非常简单的方法可以做到这一点,而无需进行上述所有更改!

如果您将处理器设置在像 lombok 这样的 gradle 中,您将不会只使用提供的或testCompile。您还需要使用annotationProcessor将其添加到您的依赖项中。例子:

dependencies {
    provided "org.projectlombok:lombok:1.16.16"
    annotationProcessor "org.projectlombok:lombok:1.16.16"
}

感谢 Jack Wharton 提供的黄油刀,我知道他是如何解决的。

提示:您可能需要使缓存无效并重新启动以使其适用于某些注释处理器,例如 lombok。

于 2017-04-17T09:40:17.733 回答
5

当时可能标记的答案就足够了,但我在 android studio 3 和 lombok 1.16.18 上有点挣扎。无论如何,以下对我有用

app>build.gradle添加以下内容

compileOnly 'org.projectlombok:lombok:1.16.18'
annotationProcessor 'org.projectlombok:lombok:1.16.18'

您可能会开始遇到其他错误,因此如果您在MyApplication>lombok.config添加以下行

lombok.addGeneratedAnnotation = false
lombok.anyConstructor.suppressConstructorProperties = true

如果您还没有lombok.config添加它

以上是lombok的开发人员在以下帖子中建议的
addGeneratedAnnotation
suppressConstructorProperties

于 2018-01-06T12:41:58.337 回答
3

从 Android Studio v3.5(2019 年 8 月)及之前版本开始,没有注释处理器的设置。然而,在依赖部分的 build.gradle 中定义就足够了:

dependencies {
...
    compileOnly 'org.projectlombok:lombok:1.18.8'
    annotationProcessor 'org.projectlombok:lombok:1.18.8'
...
}

如果 Android Studio 仍然抱怨“Lombok 需要注释处理”,对我来说,是 Lombok 插件重新安装和“缓存无效/重启”解决了这个问题。

于 2019-08-27T09:21:16.900 回答
3

lombok 网站的设置指南(lombok 为 android 设置)说我们应该做两件事

1、安装lombok插件

2、添加gradle依赖

dependencies {
  compileOnly 'org.projectlombok:lombok:1.18.6'
  annotationProcessor 'org.projectlombok:lombok:1.18.6'
}

但对我来说,插件会导致问题发生。在我禁用插件后,错误消失了,lombok 仍然有效。

于 2019-04-26T05:50:48.900 回答
1

AndroidStudio 3.5+中执行以下步骤:

  • File -> Other Settings -> Preferences for New Projects... (!)
  • 扩张Build, Execution, Deployment
  • 扩张Compiler
  • 选择Annotation Processors
  • 查看Enable annotation processing

如果它仍然不起作用,只需重新安装 Lombok 插件。

于 2019-11-29T06:20:30.170 回答
0
  1. 安装 Lombok 插件并重启
  2. 添加依赖项:https ://projectlombok.org/setup/gradle

    compileOnly 'org.projectlombok:lombok:1.18.12' annotationProcessor 'org.projectlombok:lombok:1.18.12'

    testCompileOnly 'org.projectlombok:lombok:1.18.12' testAnnotationProcessor 'org.projectlombok:lombok:1.18.12'

这对我有用。

于 2020-02-12T12:15:24.813 回答
0

按照安装手册的说明:

Gradle 确保您的 android 插件版本 >= 0.4.3 使用 gradle-lombok 插件。如果您不想使用该插件,请将 Lombok 添加到应用程序的依赖项块中(需要 Gradle v2.12 或更高版本):

dependencies {    
 compileOnly "org.projectlombok:lombok:1.16.18" 
}

Android Studio 按照前面的说明(Gradle)。除了正确设置你的 gradle 项目,你还需要添加 Lombok IntelliJ 插件来为 Android Studio 添加 lombok 支持:

  1. 转到文件 > 设置 > 插件
  2. 单击浏览存储库...
  3. 搜索龙目岛插件
  4. 点击安装插件重启Android Studio

https://projectlombok.org/setup/android

于 2017-11-29T20:12:10.283 回答