https://github.com/eitco/documentation-configuration-metadata-processor
Java annotation processor to generate additional spring configuration metadata
https://github.com/eitco/documentation-configuration-metadata-processor
annotationprocessor java spring-boot
Last synced: 10 months ago
JSON representation
Java annotation processor to generate additional spring configuration metadata
- Host: GitHub
- URL: https://github.com/eitco/documentation-configuration-metadata-processor
- Owner: eitco
- License: mit
- Created: 2025-03-26T13:24:38.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-03-26T16:13:18.000Z (10 months ago)
- Last Synced: 2025-03-26T17:24:26.484Z (10 months ago)
- Topics: annotationprocessor, java, spring-boot
- Language: Java
- Homepage:
- Size: 12.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://opensource.org/license/mit)
[](https://github.com/eitco/documentation-configuration-metadata-processor/actions/workflows/deploy.yaml)
[](https://central.sonatype.com/artifact/de.eitco.cicd/documentation-configuration-metadata-processor)
# documentation-configuration-metadata-processor
This [java annotation processor](https://docs.oracle.com/javase/8/docs/api/javax/annotation/processing/Processor.html) generates additional spring configuration metadata for the
[configuration documentation generation plugin](https://github.com/eitco/spring-config-collector-maven-plugin).
It's main usage is to generate configuration metadata for classes used in collections in
`@ConfigurationProperties` classes, which are ignored by the `spring-boot-configuration-processor`.
## Usage
Add a dependency to the processor to your POM:
````xml
de.eitco.cicd
documentation-configuration-metadata-processor
true
processor-version
````
Annotate classes to generate metadata for with:
````java
@AdditionalConfigurationMetadata(groups = {"TestGroup1","TestGroup2"})
````
The annotation requires one or more group names. The names are used to merge the generated configuration metadata with
metadata generated by the `spring-boot-configuration-processor`. By setting more than ony group it is possible to reuse
metadata at several places in the generated documentation.
The processor supports the `@NestedConfigurationProperty` annotation from Spring Boot in classes annotated with
`@AdditionalConfigurationMetadata`.