{"record":{"id":"a56e1a4f23eb225c","repo":"spring-projects/spring-boot","slug":"spring-boot-plugin-requires-gradle-8-x-8-14-or-la","errorCode":null,"errorMessage":"Spring Boot plugin requires Gradle 8.x (8.14 or later) or 9.x. The current version is {}","messagePattern":"Spring Boot plugin requires Gradle 8\\.x \\(8\\.14 or later\\) or 9\\.x\\. The current version is (.+?)","errorType":"exception","errorClass":"GradleException","httpStatus":null,"severity":"error","filePath":"build-plugin/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/SpringBootPlugin.java","lineNumber":129,"sourceCode":"\t/**\n\t * The coordinates {@code (group:name:version)} of the\n\t * {@code spring-boot-dependencies} bom.\n\t */\n\tpublic static final String BOM_COORDINATES = \"org.springframework.boot:spring-boot-dependencies:\"\n\t\t\t+ SPRING_BOOT_VERSION;\n\n\t@Override\n\tpublic void apply(Project project) {\n\t\tverifyGradleVersion();\n\t\tcreateExtension(project);\n\t\tConfiguration bootArchives = createBootArchivesConfiguration(project);\n\t\tregisterPluginActions(project, bootArchives);\n\t}\n\n\tprivate void verifyGradleVersion() {\n\t\tGradleVersion currentVersion = GradleVersion.current();\n\t\tif (currentVersion.compareTo(GradleVersion.version(\"8.14\")) < 0) {\n\t\t\tthrow new GradleException(\"Spring Boot plugin requires Gradle 8.x (8.14 or later) or 9.x. \"\n\t\t\t\t\t+ \"The current version is \" + currentVersion);\n\t\t}\n\t}\n\n\tprivate void createExtension(Project project) {\n\t\tproject.getExtensions().create(\"springBoot\", SpringBootExtension.class, project);\n\t}\n\n\tprivate Configuration createBootArchivesConfiguration(Project project) {\n\t\tConfiguration bootArchives = project.getConfigurations().create(BOOT_ARCHIVES_CONFIGURATION_NAME);\n\t\tbootArchives.setDescription(\"Configuration for Spring Boot archive artifacts.\");\n\t\tbootArchives.setCanBeResolved(false);\n\t\treturn bootArchives;\n\t}\n\n\tprivate void registerPluginActions(Project project, Configuration bootArchives) {\n\t\tSinglePublishedArtifact singlePublishedArtifact = new SinglePublishedArtifact(bootArchives,\n\t\t\t\tproject.getArtifacts());","sourceCodeStart":111,"sourceCodeEnd":147,"githubUrl":"https://github.com/spring-projects/spring-boot/blob/270dfe353fb830fd69b823a8a859287ff103854b/build-plugin/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/SpringBootPlugin.java#L111-L147","documentation":"Thrown by SpringBootPlugin.verifyGradleVersion during plugin application. It compares GradleVersion.current() against 8.14 and throws a GradleException if the running Gradle is older than 8.14. This is a hard version gate — the plugin refuses to load on incompatible Gradle versions. The message indicates support for Gradle 8.x (8.14+) and 9.x.","triggerScenarios":"Applying the 'org.springframework.boot' Gradle plugin in a project whose Gradle wrapper or installed Gradle is below version 8.14. The check runs at apply() time, before any task executes.","commonSituations":"Upgrading the Spring Boot dependency/plugin version without upgrading the Gradle wrapper. A CI environment with an older system Gradle that bypasses the wrapper. A new developer whose local Gradle install is outdated. Forking or pinning an old Gradle version for stability.","solutions":["Upgrade the Gradle wrapper: run 'gradle wrapper --gradle-version 8.14' (or newer, e.g. 8.14.2 or 9.x).","If you cannot upgrade Gradle, downgrade the Spring Boot plugin to a version compatible with your Gradle (check the plugin's compatibility matrix).","Ensure CI uses the wrapper (./gradlew) rather than a system Gradle install so the version gate is satisfied.","Verify the version in gradle/wrapper/gradle-wrapper.properties after upgrading."],"exampleFix":"// before: gradle-wrapper.properties\ndistributionUrl=https\\://services.gradle.org/distributions/gradle-8.10-bin.zip\n// after\ndistributionUrl=https\\://services.gradle.org/distributions/gradle-8.14.2-bin.zip","handlingStrategy":"validation","validationCode":"// In the root build.gradle or settings.gradle, verify Gradle version at configuration time.\nimport org.gradle.util.GradleVersion\nif (GradleVersion.current().compareTo(GradleVersion.version(\"8.14\")) < 0) {\n    throw new GradleException(\"This build requires Gradle 8.14+. Current: \" + GradleVersion.current())\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Always use the Gradle wrapper (./gradlew) so the version is enforced.","Set the wrapper version explicitly: 'gradle wrapper --gradle-version 8.14.2'.","In CI, invoke ./gradlew rather than a system gradle to respect the wrapper version."],"tags":["gradle","version-compat","configuration","spring-boot-plugin","version-gate"],"backgroundTag":null,"analyzedSha":"270dfe353fb830fd69b823a8a859287ff103854b","analyzedAt":"2026-08-11T19:42:06.541Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}