Search Gradle plugins

Plugin Latest Version

com.guidedbyte.openapi-modelgen

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.1.0
(17 September 2025)

me.karjan.enumvisitor

Automatic generation of enums with a visitor interface

0.2.0
(28 August 2025)

io.outfoxx.sunday-generator

Sunday Generator is a code generator for Sunday HTTP clients and JAX-RS server stubs in multiple languages.

1.3.5
(22 December 2024)

net.h34t.scovy

A Gradle plugin to generate type-safe kotlin DAO and DTO code from SQL queries.

0.1.0
(04 December 2023)

be.nrb.dt.swagger

Plugin to generate model and client from a swagger file. The generated code is based on lombok and Spring webclient

1.0.16
(01 June 2021)

com.liewjuntung.enum_generator

A plugin to generate Kotlin and Swift enum classes for Flutter binding code.

0.1.1
(23 September 2020)

org.ysb33r.jooq

Generates JOOQ code

0.9.0
(15 May 2024)

io.atomicbits.scraml

Scraml code generator plugin

0.9.0
(09 July 2020)

gae.piaz.layer3gen

Generates Spring standard 3 layer classes (Controller, Service, Repository) starting from JPA entities

1.9
(26 February 2023)

co.elastic.check-in-generated

Utilities for keeping generated code checked in in sync with the generation process

1.1.0
(09 June 2025)