-
我已经为intellij idea安装了插件(lombok-plugin-0.8.6-13) .
-
将lombok.jar添加到classpath中
-
我可以在结构窗口找到getter和setter . 并且Intellij没有显示任何错误 .
-
设置 - Lombok插件 - 验证了lombok的Intellij配置,它显示了"configuration of IntelliJ seems to be ok" .
似乎一切都好 . 但是当我编译测试时,错误来了:找不到方法getXXX和setXXX .
我用IntelliJ打开了.class文件,发现没有setXXX和getXXX方法 .
有人可以告诉我为什么吗?
-
插件:lombok-plugin-0.8.6-13
-
lombok.jar:1.14.0
-
idea:13.0.2 for linux
-
jdk:1.7.0_21
11 回答
对我来说,lombok插件和注释处理都需要,没有别的 . 无需使用 Eclipse 和其他 -javaagent:lombok.jar 选项 .
Idea 14.1.3,build 141.1010
Lombok插件[Preference-> plugins-> browse repositories-> search 'lombok' - > install and restart idea .
首选项 - >搜索'annotation' - >输入注释处理器 - >启用注释处理 .
如果你正在使用Eclipse编译器和lombok,这个设置最终对我有用:
IDEA 14.1
Lombok插件
... /编译器/ Java编译器>使用编译器: Eclipse
... /编译器/注释处理器>启用注释处理: checked (默认配置)
... /编译器>其他构建过程VM选项: -javaagent:lombok.jar
最重要的部分是最后一部分,我的看起来如下:
IntelliJ编辑器需要插件才能识别getter和setter,eclipse编译器需要javaagent才能使用lombok进行编译 .
为了解决问题集:
首选项(Ctrl Alt S)
构建,执行,部署
编译器
注释处理器
启用注释处理
确保安装了IntelliJ的Lombok插件!
首选项
->
插件搜索"Lombok Plugin"
单击“浏览存储库”...
选择Lombok插件
安装
重启IntelliJ
IDEA 2016.1:
安装lombok plugin
设置 - >编译器 - >注释处理器 - >启用注释处理:选中(默认配置)
设置 - >编译器 - >注释处理器 - >注释处理器添加"lombok.launch.AnnotationProcessorHider$AnnotationProcessor"
另外如果您使用maven添加到maven-compiler-plugin配置 - > annotationProcessors - > annotationProcessor:lombok.launch.AnnotationProcessorHider $ AnnotationProcessor
确保满足这两个要求:
首选项>构建,执行,部署>编译器>注释处理器>启用注释处理
为您的项目安装并启用了
这个问题的高级答案都没有解决我的问题 .
我设法通过在pom.xml文件中向lombok添加依赖项来解决问题,即:
我正在使用IntelliJ 2016.3.14和maven-3.3.9
希望我的回答对你有所帮助
在花了太长时间对此进行故障排除后,我发现了一个简单的解决方法,可确保IntelliJ在构建期间正确处理Lombok注释 .
此解决方法不需要gradle-lombok插件 . 您的
build.gradle
只需要以下内容:解决方法是打开以下IntelliJ设置:
打开IntelliJ首选项/设置 .
导航至
Build, Execute, Deployment > Build Tools > Gradle > Runner
选中标有
Delegate IDE build/run actions to gradle
的复选框与此页面上的其他解决方案相比,此解决方法的优点:
无需注释处理!
能够使用您选择的Java编译器(无需Eclipse编译器)
没有使用buggy gradle-lombok插件(虽然也许其他人可以解决这个问题)
无需VM选项
没有到lombok jar的硬编码路径
一个缺点是IntelliJ将不再使用自己的测试运行器 . 相反,测试始终通过Gradle运行 .
如果你在Mac上使用Intellij,这个设置最终对我有用 .
Installations: Intellij
转到“首选项”,搜索“插件” .
在插件搜索框中输入"Lombok" . Lombok是一个非捆绑的插件,因此它最初不会显示 .
单击"Browse"以搜索非捆绑插件
"Lombok Plugin"应该出现 . 选择它 .
单击绿色"Install"按钮 .
单击"Restart Intellij IDEA"按钮 .
Settings:
启用注释处理器
转到首选项 - >构建,执行,部署 - >首选项 - >编译器 - >注释处理器
文件 - >其他设置 - >默认设置 - >编译器 - >注释处理器
检查是否启用了Lombok插件
IntelliJ IDEA->首选项 - >其他设置 - > Lombok插件 - >启用Lombok
在全局库和项目依赖项中添加Lombok jar .
文件 - >项目结构 - >全局库(添加lombok.jar)
文件 - >项目结构 - >项目设置 - >模块 - >依赖项选项卡=检查lombok
重启Intellij
在Itellij 15 CE上,只需安装Lombok插件即可(无需额外配置) .
我按照这个程序来获得类似/相同的错误 .
mvn idea:干净
mvn idea:idea
之后,我可以从IDE intellij和命令行构建 .
我无法使用javac编译器,我得到了同样的错误 .
我已经启用了注释处理器,并且还尝试重建项目,使缓存/重启无效 . 没有帮助 .
然而,我确实使用eclipse编译器部分工作 . 我说部分是因为虽然构建成功通过,但编辑仍抱怨“无法解析符号” .
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被配置为自定义的“提供”配置 . 在build.gradle中添加它后工作正常
所以,3个步骤
从文件 - >设置 - >插件安装Lombok插件
启用注释处理器(javac编译器也可以)
如果要将lombok添加为自定义配置,请确保已更新build.gradle或pom.xml .