【发布时间】:2019-07-26 13:26:14
【问题描述】:
我正在尝试使用 lombok (https://projectlombok.org/) 来帮助生成“样板”代码。我已经添加了 maven 依赖,还添加了 lombok maven 插件到 POM 中的<build> 元素。
我还被告知要做的一件事是将带有 lombok 注释的代码放在 src/main/lombok 而不是 src/main/java 中。我假设我保持包目录结构与src/main/java 中的相同。
这似乎有点奇怪,但我这样做了,lombok 确实使用所有 getter/setter/equals/hashCode 等方法生成了源文件。它们被放置在例如target/generated-sources/lombok/x/y/z/MyClass.java。这是我在使用 XJC 等其他代码生成工具时所期望的。
我的问题是:如何让这个生成的源代码对 eclipse 和编译环境“可见”?我到处都是编译错误,因为它无法“看到”生成的代码。这发生在 Eclipse 以及当我尝试执行 mvn clean install 时。
更新:
我已经尝试将 lombok 安装到 Eclipse 中。它生成 getter/setter/etc,但是在某处引入了一个错误,破坏了 eclipse 的自动完成功能。我从 eclipse 中删除了它,只是想让 maven 进行生成(或 delombok-ing)。
【问题讨论】:
-
你从哪里得到 src/main/lombok 的想法?这听起来真的很糟糕。您是否遵循例如baeldung.com/lombok-ide 关于如何安装 lombok 并在 IDE 中进行设置?
-
来自 maven 插件站点。 anthonywhitford.com/lombok.maven/lombok-maven-plugin/usage.html。我同意这听起来很奇怪。
-
@howlger "参见 projectlombok.org/setup/eclipse" 去过那里,做到了。这是一个不同的故事,我向 Lombok 谷歌小组发布了一个问题。我将它安装到 eclipse 中,它很好地生成了代码并且它是可见的 - 但它引入了一个问题,即 eclipse 自动完成在某些情况下被破坏。
-
@JosephGagnon 那是“我也被告知...”,对吗?如果是,请添加一个指向您被告知的 Lombok google 组的链接。