在Intellij的想法下,Lombok注释不能被编译

  1. 我已经安装了intellij idea的插件(lombok-plugin-0.8.6-13)。
  2. 将lombok.jar添加到classpath中
  3. 我可以在结构的窗口中findgetter和setter。 而Intellij显示没有错误。
  4. 设置 – Lombok插件 – Lombokvalidation的Intellijconfiguration,它显示“IntelliJ的configuration似乎没问题”。

看来一切都好。 但是,当我编译一个testing,错误来了:找不到方法getXXX和setXXX。

我用IntelliJ打开.class文件,发现没有setXXX和getXXX方法。

有人能告诉我为什么吗?

  • 插件:龙目岛 – 插件-0.8.6-13
  • lombok.jar:1.14.0
  • idea:13.0.2 for linux
  • JDK:1.7.0_21

为了解决这个问题集:

  • 首选项(Ctrl + Alt + S)
    • 构build,执行,部署
      • 编译器
        • 注释处理器
          • 启用注释处理

确保你已经安装了IntelliJ的Lombok插件!

  • 首选项->插件
  • search“Lombok插件”
  • 点击浏览存储库…
  • selectLombok插件
  • 安装
  • 重新启动IntelliJ

如果你正在使用lombok的Eclipse编译器,这个设置终于为我工作:

  • IDEA 14.1
  • 龙目岛插件
  • … / 编译器 / Java编译器 >使用编译器: Eclipse
  • … / 编译器 / 注释处理器 >启用注释处理: 选中 (默认configuration)
  • … / 编译器 >其他构build过程VM选项: -javaagent:lombok.jar

最重要的部分是最后一个,我的样子如下: 在这里输入图像说明

IntelliJ编辑器需要插件来识别getter和setter,eclipse编译器需要使用javaagent来与lombok编译。

对我来说,lombok插件和注释处理都是必需的,没有别的。 无需使用Eclipse和其他-javaagent:lombok.jar选项。

  • 想法14.1.3,build立141.1010
  • Lombok插件[Preference-> plugins->浏览版本库 – >search'lombok' – >安装并重新启动想法。
  • 首选项 – >search“注释” – >input注释处理器 – >启用注释处理。

IDEA 2016.1:

  • 安装lombok插件
  • 设置 – >编译器 – >注释处理器 – >启用注释处理:选中(默认configuration)
  • 设置 – >编译器 – >注释处理器 – >注释处理器添加“lombok.launch.AnnotationProcessorHider $ AnnotationProcessor”
  • 另外如果你正在使用maven添加到maven-compiler-pluginconfiguration – > annotationProcessors – > annotationProcessor:lombok.launch.AnnotationProcessorHider $ AnnotationProcessor

     <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven.plugin.compiler.version}</version> <configuration> <compilerVersion>${java.version}</compilerVersion> <source>${java.version}</source> <target>${java.version}</target> <annotationProcessors> <annotationProcessor>lombok.launch.AnnotationProcessorHider$AnnotationProcessor</annotationProcessor> </annotationProcessors> </configuration> </plugin> 

确保满足这两个要求:

  1. 启用注释处理,

    首选项>构build,执行,部署>编译器>注释处理器>启用注释处理

  2. 龙目插件已安装并启用您的项目。

在Itellij 15 CE上,安装Lombok Plugin就足够了(不需要额外的configuration)。

这个问题的高级答案没有一个能解决我的问题。

我设法通过在pom.xml文件中向lombok添加一个依赖来解决这个问题,即:

 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.12</version> </dependency> 

我正在用maven-3.3.9使用IntelliJ 2016.3.14

希望我的回答对你有帮助

我无法得到这与javac编译器的工作,我得到相同的错误。

错误:(9,14)java:package lombok不存在

我已经启用了注释处理器,并且也尝试了重build项目,使caching/重启失效。 没有帮助。

但是我确实使用eclipse编译器部分工作。 我说部分是因为虽然编译通过成功,编辑还是抱怨“无法parsing符号”。

Idea – 15.04社区版Lombok – 1.16.6 Lombok插件( https://github.com/mplushnikov/lombok-intellij-plugin ) – 0.9.8 JDK – 1.8.0_51

更新:好吧,我终于得到了这个工作。 我的是一个gradle项目,lombok被configuration为一个自定义的“提供”configuration。 在build.gradle中添加这个之后工作得很好

 idea { module { scopes.PROVIDED.plus += [configurations.provided] } } 

所以,3个步骤

  1. 从File-> Settings-> Plugins安装Lombok插件
  2. 启用注释处理器(javac编译器也可以)
  3. 如果要将lombok作为自定义configuration添加,请确保已为build.gradle或pom.xml更新了想法。