【问题标题】:CustomNaming strategy with mapstruct SPI使用 mapstruct SPI 的自定义命名策略
【发布时间】:2016-07-09 19:44:00
【问题描述】:

我正在尝试让 mapstruct 使用不同的 setter 命名约定处理 bean。项目中的一些 bean 的名称类似于 withValue(string val)

根据文档,可以在项目中实现 AccessorNamingStrategy 并配置 SPI。 基于此,我创建了自己的 NamingStrategy 并在我的项目中创建了以下文件

/META-INF/services/org.mapstruct.ap.spi.AccessorNamingStrategy 其中包含我的自定义实现的完全限定名称。

但我似乎无法让 spi 为我的自定义命名策略工作。

深入到 Options.java 我发现属性“mapstruct.alwaysGenerateServicesFile”需要设置为 true。 但是 intelliJ 中的注释处理器似乎拒绝了这个属性,因为它没有被任何注释处理器识别。

我还看到http://mapstruct.org/documentation/1.1/reference/html/index.html#configuration-options 中未记录此属性“mapstruct.alwaysGenerateServicesFile

MapStruct 是否仍支持此功能。是否有人在您的项目中使用了自定义命名策略。

【问题讨论】:

    标签: mapstruct


    【解决方案1】:

    我真的明白了

    需要打包/META-INF/services/org.mapstruct.ap.spi.AccessorNamingStrategy

    CustomNamingStrategy 在一个单独的 jar 中并将其包含在主项目中。

    【讨论】:

    • 很高兴您找到了解决方案。 MapStructreference guide现在也描述了命名策略SPI。
    猜你喜欢
    • 1970-01-01
    • 2018-04-13
    • 1970-01-01
    • 2013-08-21
    • 2020-10-30
    • 2016-01-03
    • 1970-01-01
    • 2017-09-26
    • 2018-12-21
    相关资源
    最近更新 更多