当前位置: 首页 > 面试题库 >

无法在Java 11中使用Lombok

施彦
2023-03-14
问题内容

我们将Java版本从8升级到11,但是在使用Lombok的Getter和Setter注释实现POJO类时,我遇到了getter /
setter方法的编译错误。

有没有一种方法可以使用Lombok的@Data注释提供getter和setter而不在Java 11中实现它们?

目前,我正面临错误:

找不到getStoreName()

在类中storeName被声明为全局变量的位置,在类上方带有@Data Lombok批注。


问题答案:

TL; DR

将Lombok升级为
依赖项
和IDE插件(IntelliJ,NetBeans,Eclipse),并在IDE设置中启用注释处理。

最新版本的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批注的支持,以使用IntelliJ IDEA编写出色的Java代码。

2018年12月17日发行的最新版本(0.23)

  • 测试并支持IntelliJ版本:2016.2、2016.3、2017.X, 2018.X

龙目岛项目依赖

确保已将Lombok依赖项添加到项目中。该插件不会自动为您添加。

请注意:建议使用最新版本的Lombok依赖 项,但不能保证所介绍的所有功能 均可用。 有关更多详细信息,请参见Lombok
changelog。

因此,请将您的lombok /插件版本更新为最新版本。应该像魅力一样工作。



 类似资料:
  • 主要内容:Java11 Lambda中使用var的示例,Java11 Lambda中使用var的限制Java 11 允许在 lambda 表达式中使用 var,它可用于将修饰符应用于局部变量。 Java11 Lambda中使用var的示例 ApiTester.java 输出结果为 Java11 Lambda中使用var的限制 在 lambda 表达式中使用 var 有一定的限制。 var 参数不能与其他参数混合使用。以下将抛出编译错误。 var 参数不能与其他类型参数混合使用。以下将抛出编译错误

  • 我正在为Java11实现一个模块,并希望使用JSR250中的注释(javax.annotation.PostConstruct和javax.annotation.PreDestroy)。 我已经更改了根据依赖项从: 对此: 这个工件此行: 因此,我尝试将其添加到我的模块信息中。java文件: 但是,我得到了一个错误的导入: 错误消息是: 我已经研究了以下相关问题,但仍无法解决我的问题: 我不能在J

  • 尽管回顾了如何使用Java 11和JavaFX 11运行ControlsFX示例应用程序,以及如何运行ControlsFX Java 11和JavaFX 11以及web上的其他建议,但我仍然无法让ControlsFX示例应用程序在Java 11(OpenJDK 11.0.1)中运行。这是我的命令行: 和输出: 任何帮助将不胜感激,谢谢。

  • 问题内容: 我正在研究要与Jenkins 2.0一起使用的Jenkinsfile。无法识别该方法。我缺少一些配置以使其可用吗? 我的Jenkinsfile: 运行时,出现以下错误: among [AWSEBDeployment, archive, bat, build, catchError, checkout, deleteDir, dir, echo, emailext, error, fil

  • 主要内容:Java11 嵌套类的示例,输出结果为Java 11 引入了嵌套类的概念,我们可以在类中声明一个类。这种类的嵌套允许在一个地方对要使用的类进行逻辑分组,使它们更具可读性和可维护性。嵌套类可以有四种类型 - 静态嵌套类 非静态嵌套类 本地类 匿名类 Java 11 还提供了嵌套的概念,以允许嵌套类的通信和验证。 Java11 嵌套类的示例 ApiTester.java 输出结果为