我们将Java版本从8升级到了11,但是在使用Lombok的Getter和Setter注释实现POJO类时,我遇到了getter / setter方法的编译错误。
是否有一种方法可以使用Lombok的@Data
注释提供getter和setter而不在Java 11中实现它们?
当前,我面临错误:
无法找到getStoreName()
其中storeName
在类中声明为全局变量,并在类上方带有@Data Lombok注释。
答案 0 :(得分:16)
TL; DR升级Lombok作为dependency和IDE插件(IntelliJ,NetBeans,Eclipse)。
Lombok和/或IntelliJ插件的最新版本完全支持Java 11。
https://projectlombok.org/changelog
v1.18.4(2018年10月30日)
- ...
- 平台:对lombok的JDK10 / 11支持进行了许多改进。
- ...
https://github.com/mplushnikov/lombok-intellij-plugin
提供对lombok注释的支持,以编写出色的Java代码 IntelliJ IDEA。
最新版本(0.23)已于2018年12月17日发布
...
- 经过测试并支持IntelliJ版本:2016.2、2016.3、2017.X, 2018.X
...
龙目岛项目依赖项
确保已添加Lombok依赖项 到您的项目。该插件不会自动为您添加。
请注意:使用Lombok依赖关系的最新版本是 推荐,但不能保证引入所有功能 将可用。有关更多详细信息,请参见Lombok更新日志。
...
因此,请将您的lombok /插件版本更新为最新版本。应该像魅力一样工作。
答案 1 :(得分:2)
对于eclipse用户,您必须在eclipse中安装lombok。 请按照此处的说明进行操作 https://projectlombok.org/setup/eclipse