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
@OpenApi
to 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 -
JavalinTest
shows 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 |