在Gradle中使用MapStruct SPI自定义AccessorNamingStrategy

时间:2017-10-31 18:11:20

标签: java gradle mapstruct codegen object-object-mapping

我正在尝试实现一个自定义访问器命名策略,如下所示:

http://mapstruct.org/documentation/stable/reference/html/#using-spi

但是,我无法使用Gradle。似乎只有Maven的使用示例:

https://github.com/mapstruct/mapstruct-examples/tree/master/mapstruct-spi-accessor-naming

有没有人尝试过使用Gradle这个功能?

我尝试了Maven项目结构,并将pom.xml改编为build.gradle,如下所示:

plugins {
    id 'net.ltgt.apt' version "0.8"
}

dependencies {
  // Add project containing custom DefaultAccessorNamingStrategy implementation 
  // and corresponding declaration in META-INF/services to annotation processor classpath 
  apt project(':my-project-containg-naming-strategy-impl') 
  // Add MapStruct annotation processor to annotation processor classpath
  apt "org.mapstruct:mapstruct-processor:1.2.0.Final"

  compile "org.mapstruct:mapstruct-jdk8:1.2.0.Final"
}

但是,我的自定义AccessorNamingStrategy没有任何效果。不幸的是,我完全不知道如何获得关于此的调试信息...

1 个答案:

答案 0 :(得分:1)

实际上它确实如上所述。似乎我在Gradle文件中的某个地方只有一个错字...