Eclipse 无法识别 Lomboks 构造函数注入

Eclipse not recognising Lomboks constructor injection

由于一些问题,我在 ubuntu 机器上重新安装了 eclipse。我现在已经导入了我所有的项目并将 lombok 插件添加到我的 eclipse 版本中。重新启动 eclipse 后,它会识别诸如 @Builder、@RequiredArgsConstructor 等注释。但是,有一些 类 使用:

@RequiredArgsConstructor(onConstructor_ = {@Inject})

Eclipse 抱怨 onConstructor_ 部分说:

The attribute onConstructor_ is undefined for the annotation type 
RequiredArgsConstructor.

这阻止了我 运行 编译我的代码,因为它未能注入构造函数。

我已经将 lombok 安装到 eclipse 中,并且在我的 pom.xml 文件中包含了所有相关的依赖项。

我从他们的网站下载了 lombok-1.18.4.jar 但是当我 运行 它时,出现的对话框 window 不允许我指定我的 IDE看起来像图像:

如您所见,我指定 IDE 的框不可用,我无法向下滚动或 left/right 找到它。

这迫使我下载旧版本的 lombok-jar,它将正确打开并允许我指定我的 IDE。

这就是 eclipse 识别本文开头提到的注释的原因 post。

我对此很着急,我唯一能想到的是我添加到 eclipse 的 lombok 版本不识别这个构造函数注入?

有人遇到过这样的问题吗?尝试解决这个问题会很棒。

编辑:

如果我将注释中的注入更改为

onConstructor = @__(@Inject)

似乎有效..

但是,我不想这样做

如果您有 UI 个问题,您可以使用命令行安装最新的 Lombok:

java -jar lombok.jar install <path-to-eclipse>

确保您在 pom 中也使用相同的版本。

关于您的编译问题,请检查您是否已将项目和 Eclipse 配置为使用 Java 版本 >= 8。适用于您的语法仅适用于 Java < 8。