java - Eclipse Lombok 注释未编译...为什么?

标签 java eclipse spring maven lombok

<分区>

我的项目有问题。 它是一个 Spring CRUD RestFul API,它公开提供 Json 数据的服务。 我使用 JDK-7、Eclipse-Neon 和 Maven 进行编码、构建,并将项目部署到 JBossEAP 6.4 服务器中。 一切都运行良好,服务响应正确。

所以我决定加入Lombok,减少锅炉代码,提高代码的可读性。顺便说一下,我之前在另一个项目中使用过 Lombok,并且运行良好。

这是我的问题,包括 Lombok 之后: - 当我使用 Maven (mvn clean install) 制作耳朵时,一切进展顺利,项目部署和工作完美无缺。 - 当项目由 Eclipse 构建时,Lombok 注释(即:@Data 等)不包含在 *.class 中。因此,Eclipse 部署的 ear 工作正常,但所有实体都没有任何 getter/setter 等等。

我知道 Eclipse 已正确配置,因为我的代码中没有任何与 Lombok 关联的警告,eclipse 的大纲 View 显示了生成的方法。

有人知道这类问题吗?

最佳答案

您还必须在 Eclipse 中安装 lombok 插件。 (请注意,这与项目依赖项中存在的 lombok 有所不同;您需要两者。)此外,Eclipse 中安装的版本应该与您在 pom.xml 中的版本相同。否则可能会出现奇怪的编译问题,比如某些注释的代码不是在 Eclipse 中而是在 Maven 中生成的,反之亦然。

可以找到 Eclipse 的安装说明 here .

安装并重新启动 Eclipse 后,检查“关于 Eclipse”对话框。它必须包含一些文本,例如“Lombok v1.18.3 “Edgy Guinea Pig”已安装。”。如果不是这种情况,则 lombok 插件未正确安装。

如果安装不成功,您应该尝试将 lombok 安装到干净的 Eclipse 安装(甚至在添加任何项目之前)。

说明: Eclipse 使用自己的编译器(不同于 maven 使用的 javac)。所以lombok也必须hook到Eclipse的编译过程中,所以Eclipse需要那个lombok插件。

另请注意,编译的类文件中不应出现 Lombok 注释,因为 Lombok 注释处理器会在生成替换代码时删除它们。

关于java - Eclipse Lombok 注释未编译...为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42301333/

相关文章:

spring - 包含 PIE.htc 的问题

eclipse - SOAPUI、SpringWS、Tomcat5.5的问题

java - 调用一个方法但它不起作用

java - 获取 n x n 网格中所有可能的下边缘和右边缘路径

java - 拦截 JDBC 连接

java - 如何使用 Ant 脚本将 XML 文件包含到 jar 的根目录中?

python - 有没有办法用 Python 创建 Eclipse 插件?

java.util.ServiceConfigurationError : com. sun.tools.xjc.Plugin :Provider org. eclipse.persistence.jaxb.plugins.BeanValidationPlugin 不是子类型

spring - spring框架和spring roo有什么区别

java - 如何用空列表而不是 null 抛出自定义异常?