https://github.com/filiphr/mapstruct-builder-accessor
Alternative Accessor Naming Strategy for MapStruct that supports builder setters
https://github.com/filiphr/mapstruct-builder-accessor
builder mapping mapstruct
Last synced: 3 days ago
JSON representation
Alternative Accessor Naming Strategy for MapStruct that supports builder setters
- Host: GitHub
- URL: https://github.com/filiphr/mapstruct-builder-accessor
- Owner: filiphr
- License: apache-2.0
- Created: 2017-12-21T07:29:23.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-12-21T09:23:28.000Z (over 8 years ago)
- Last Synced: 2025-12-26T02:55:38.937Z (5 months ago)
- Topics: builder, mapping, mapstruct
- Language: Java
- Size: 61.5 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# MapStruct builder accessor
This project supports an alternative `AccessorNamingStrategy` which supports different builder styles.
**IMPORTANT**: This is not a support for using builders for mappings, but just the discovery of the properties within a builder type.
**IMPORANT2**: This is not yet published on maven central. If you want to use it as a dependency you can use [jitpack.io](https://jitpack.io/#filiphr/mapstruct-builder-accessor/)
## Using
In order to use this accessor strategy one just needs to add the following dependencies:
```xml
org.apache.maven.plugins
maven-compiler-plugin
org.mapstruct
mapstruct-processor
${mapstruct.version}
com.github.filiphr
mapstruct-builder-accessor
${mapstruct-builder-accessor.version}
```
In order this to work nicely with IntelliJ (due to [IDEA-150621](https://youtrack.jetbrains.com/issue/IDEA-150621)) one needs
to add the the mapstruct processor and the builder accessor to their main pom dependencies
```xml
org.mapstruct
mapstruct-processor
${mapstruct.version}
provided
com.github.filiphr
mapstruct-builder-accessor
${project.version}
provided
```
## Building from source
In order to build this project to source you need to run `./mvnw clean install`