MapStruct 1.0.0.Beta3 is out with nested properties, qualifiers and more

I’m delighted to announce the release of MapStruct 1.0.0.Beta3. This version brings the long awaited support for mapping nested source properties, built-in mappings for Java 8 date/time types, fine-grained selection of mapping methods via qualifiers and much more. You can find the complete list of a whopping 46 closed issues here. Note that existing applications using MapStruct need to adapt to some changes we had to do in order to iron out some glitches from the previous beta releases.
Read more...

Support for Java 8, JodaTime and more: MapStruct 1.0.0.Beta2 released

It’s my great pleasure to announce the release of MapStruct 1.0.0.Beta2. Amongst the new features is initial support for Java 8, built-in mappings for the types of the Joda-Time date and time API, flexible mapping customization via inline Java expressions and much more. Distribution bundles (ZIP, TAR.GZ) are available on SourceForge. Alternatively, you can obtain the dependencies from Maven Central. The GAV coordinates are: org.mapstruct:mapstruct:1.0.0.Beta2 for the annotation JAR, to be used with Java <= 7 org.
Read more...

MapStruct 1.0.0.Beta1 is out with JAXB support, custom factories, decorators and more

The MapStruct team is very happy to announce the release of MapStruct 1.0.0.Beta1. One core part of the new release is comprehensive support for mapping JAXB types with JAXBElement and XmlGregorianCalendar attributes. It’s possible now to plug in custom factories for creating objects, which also supports the JAXB use case as we’ll see in a minute. Further new features are the support for creating mappers from abstract classes (instead of interfaces) and decorators for customizing the behavior of mapping methods.
Read more...

MapStruct 1.0.0.Alpha2 has landed!

It is my great pleasure to announce the release of MapStruct 1.0.0.Alpha2. This took us a bit longer than expected, but the new release offers quite a few exciting new features we hope you’ll enjoy. The JARs have already been synched to Maven Central. The coordinates are: org.mapstruct:mapstruct:1.0.0.Alpha2 for the annotation JAR and org.mapstruct:mapstruct-processor:1.0.0.Alpha2 for the annotation processor. Alternatively you can get a distribution bundle from SourceForge.
Read more...

Using MapStruct with Gradle

Update Feb. 26, 2017: Since writing this post, usage of annotation processors with Gradle got much easier and the set-up described in the following isn’t required anymore. The example project on GitHub has been updated accordingly. You work with Gradle to build your application and would like to make use of MapStruct to generate mappings between different representations of your model? Then read on to learn how to make MapStruct work with the Groovy based build tool.
Read more...