Compile-time OpenAPI integration for Javalin 6.x ecosystem. This is a new plugin that replaces old built-in OpenApi module, the API looks quite the same despite some minor changes.
- Reflection free, does not perform any extra operations at runtime
- Uses
@OpenApito simplify migration from bundled OpenApi implementation - Supports Java 11+ (also 16 and any further releases) 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
- Test module -
JavalinTestshows how this plugin work in Java codebase using various features - Reposilite - real world app using Javalin and OpenApi integration
| Module | Description |
|---|---|
openapi-annotation-processor |
Compile-time annotation processor, should generate /openapi-plugin/openapi.json resource |
openapi-specification |
Annotations & classes used to describe OpenAPI specification |
openapi-test |
Example Javalin application that uses OpenApi plugin in Gradle & Maven |
| Plugin | Description |
|---|---|
javalin-openapi-plugin |
Loads /openapi-plugin/openapi.json resource and serves main OpenApi endpoint |
javalin-swagger-plugin |
Serves Swagger UI |
javalin-redoc-plugin |
Serves ReDoc UI |
| Branch | Javalin version | OpenApi Version | Java Version |
|---|---|---|---|
| main | 6.x | 6.x | JDK11 |
| 5.x | 5.x | 5.x | JDK11 |
| 4.x | 4.x | 1.x | JDK8 |
