Skip to content

Requirements

These apply to the project that uses Sprout (your application, not Sprout’s own build):

Requirement Minimum
JDK 21+
Maven 3.9+ (if using Maven)
Gradle Any modern version that supports annotationProcessor configuration

Sprout’s annotation processor is compiled with maven.compiler.release=21 and declares @SupportedSourceVersion(RELEASE_21). You must compile your application with JDK 21 or later.

Generated code is standard Spring Boot code. You need the usual Spring Boot stack:

Dependency Version
Spring Boot 3.5.x or later
spring-boot-starter-web for the generated @RestController
spring-boot-starter-data-jpa for the generated JpaRepository
A JPA provider (e.g. Hibernate) and a database driver as normal

These are only needed when you use the corresponding Sprout features:

Feature Required dependency
Bean validation on POST/PUT (@Valid) spring-boot-starter-validation
@SproutPolicy security expressions spring-boot-starter-security
authenticationPrincipal = true spring-boot-starter-security
OpenAPI / Swagger docs springdoc-openapi-starter-webmvc-ui (or equivalent SpringDoc artifact)
Unified error handling + security autoconfig sprout-runtime