OpenAPI Plugin [](https://github.com/javalin/javalin-openapi/actions/workflows/gradle.yml) [](https://maven.reposilite.com/#/snapshots/io/javalin/community/openapi)
February 22, 2026 ยท View on GitHub
Compile-time OpenAPI integration for Javalin 7.x ecosystem. This is a new plugin that replaces old built-in OpenApi module, the API looks quite the same despite some minor changes.

How to use
See https://javalin.github.io/javalin-openapi.
Notes
- Reflection free
- Uses
@OpenApito simplify migration from bundled OpenApi implementation - Supports Java 17+ and Kotlin (through Kapt)
- Uses internal WebJar handler that works with
/*route out of the box - Provides better projection of OpenAPI specification
- Schema validation through Swagger core module
Other examples
- Test module -
JavalinTestshows how this plugin work in Java codebase using various features - Reposilite - real world app using Javalin and OpenApi integration
Repository structure
Universal modules
| Module | Description |
|---|---|
openapi-annotation-processor | Compile-time annotation processor, should generate /openapi-plugin/openapi-{default/<version>}.json resources |
openapi-generator | Shared schema generation logic: type mappings, runtime builder DSL, example generation |
openapi-specification | Annotations & classes used to describe OpenAPI specification |
examples | Example Javalin application that uses OpenApi plugin in Gradle & Maven |
Javalin plugins
| Plugin | Description |
|---|---|
javalin-openapi-plugin | Loads /openapi-plugin/openapi-{default/<version>}.json resources and serves main OpenApi endpoint |
javalin-swagger-plugin | Serves Swagger UI |
javalin-redoc-plugin | Serves ReDoc UI |
Branches
| Branch | Javalin version | OpenApi Version | Java Version |
|---|---|---|---|
| main | 7.x | 7.x | JDK17 |
| 6.x | 6.x | 6.x | JDK11 |
| 5.x | 5.x | 5.x | JDK11 |
| 4.x | 4.x | 1.x | JDK8 |