Search Gradle plugins
| Plugin | Latest Version |
|---|---|
|
A comprehensive Gradle plugin for generating Java DTOs from multiple OpenAPI specifications with enhanced features: ## Requirements • Java 17+ • Gradle 8.0+ • OpenAPI Generator 7.14.0+ (automatically managed) ## Features • Multi-spec support with individual task generation • Lombok annotation integration (@Data, @Builder, @SuperBuilder, etc.) • Custom Mustache template support with precedence resolution • Template variable expansion (nested variables like {{currentYear}} in {{copyright}}) • Incremental build support for optimal performance • Configuration validation with detailed error reporting • Parallel template processing for large template sets • Content-based template change detection using SHA-256 hashing ## Usage Examples ### Basic Configuration ```groovy plugins { id 'com.guidedbyte.openapi-modelgen' version '1.0.0' } openapiModelgen { defaults { outputDir "build/generated-sources/openapi" modelNameSuffix "Dto" generateModelTests false validateSpec true } specs { pets { inputSpec "src/main/resources/openapi-spec/pets.yaml" modelPackage "com.example.model.pets" } orders { inputSpec "src/main/resources/openapi-spec/orders.yaml" modelPackage "com.example.model.orders" } } } ``` ### Advanced Configuration ```groovy openapiModelgen { defaults { outputDir "build/generated-sources/openapi" templateDir "src/main/resources/openapi-templates" configOptions([ dateLibrary: "java8", serializationLibrary: "jackson", useBeanValidation: "true", hideGenerationTimestamp: "true" ]) templateVariables([ copyright: "Copyright © {{currentYear}} {{companyName}}", currentYear: "2025", companyName: "My Company Inc." ]) globalProperties([ skipFormModel: "false", generateAliasAsModel: "true" ]) } specs { pets { inputSpec "specs/pets-v1.yaml" modelPackage "com.example.pets.v1.model" configOptions([ additionalModelTypeAnnotations: "@lombok.Data;@lombok.experimental.SuperBuilder" ]) } } } ``` Command Line Options: All configuration options can be overridden via command line: • --model-package=com.example.model • --output-dir=build/custom-output • --template-dir=custom-templates • --model-name-suffix=Entity • --validate-spec • --generate-model-tests • --generate-api-docs Task Generation: • generateOpenApiDtosForPets - Generate DTOs for pets specification • generateOpenApiDtosForOrders - Generate DTOs for orders specification • generateOpenApiDtosAll - Generate DTOs for all specifications Dependencies: The plugin automatically detects and works with any OpenAPI Generator version provided by your configuration management (corporate plugins, etc.). If no version is found, it falls back to the tested default version 7.14.0. The plugin also automatically adds required dependencies including Lombok, Jackson, Spring Boot validation, and JSR-305 annotations. Template Customization: Place custom .mustache templates in your template directory to override plugin defaults. Template resolution follows precedence: user templates > plugin templates > OpenAPI generator defaults. For detailed documentation visit: https://github.com/ryansmith4/openapi-modelgen |
2.2.2
(19 December 2025) |
|
A Plugin that configures directory for generated sources |
2.6.0
(15 November 2024) |
|
Copy all the dependency jars of a project into a destination directory |
0.7
(19 May 2023) |
|
Single jar packaging based on a JarClassLoader. Unlike maven shade and gradle shadow, this form of packaging does not intermix classes into a single directory, and thereby maintains a degree of separation between libraries with distinct licensing concerns. Does not require write access to the filesystem like capsule |
1.1.0
(20 January 2023) |
|
A plugin that scans a directory tree and produces a report of Gradle projects and versions used. |
0.5
(02 August 2022) |
|
Encapsulates some common syntax, such as setting Java options.encoding=UTF-8, clearing Maven target directory when cleaning. |
1.6
(16 July 2022) |
|
Applies AsciiDoctor plugin and adds a zip task to compress output directory. |
1.0.8
(08 December 2021) |
|
Directories to Gradle modules |
0.1
(11 July 2021) |
|
Gradle plugin |
1.1.1
(29 January 2021) |
|
A settings plugin that provides directory conventions and subproject configuration for AWS CloudFormation projects |
1.0.11
(05 July 2020) |