首页 > 解决方案 > 如何正确地将 MapStruct 与 Eclipse 集成?(包括 Lombok java 代理)

问题描述

我愿意在一些官方项目中使用 MapStruct,所以我决定先对其进行一些测试;我需要使其与 eclipse 集成并遵循 MapStruct 网站上提供的所有说明,但是......到目前为止还没有运气。有没有人成功实现了这种整合?如果是的话,我会错过什么?

我的测试从更大的东西开始,但是当我意识到它不起作用时,我决定使用一个更小的例子,所以我这样做了:

...无法说服 eclipse 自动生成映射器实现,我什至在 pom.xml 中添加了 jdt_apt 行。

这是 pom.xml 的片段 - 请参阅他的 mapstruct-clone 项目以获取整个代码。

<properties>
    <org.mapstruct.version>1.3.0.Final</org.mapstruct.version>
    <m2e.apt.activation>jdt_apt</m2e.apt.activation>
</properties>

预期结果将是:

重要编辑:我也在使用 lombok javaagent

标签: javaeclipselombokmapstruct

解决方案


我最终找到了问题的解决方案( =D )

该问题确实与 Lombok java 代理和 MapStruct 之间的不兼容有关。要让它工作,只需按照 Pavel 在他上一篇文章中的建议进行操作,它就会起作用:

[...] 只需删除 lombok.jar 中的 SPI 注册(通过删除 META-INF/services/org.mapstruct.ap.spi.AstModifyingAnnotationProcessor)[...]


推荐阅读