{"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":"validation","errorClass":"GradleException","httpStatus":null,"severity":"critical","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/5b2dbdbb8be64415eb6552f81ff7c449c8d251e6/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 if GradleVersion.current() is older than 8.14. It is a hard fail (GradleException) at apply() time, so no Spring Boot tasks are registered. The message explicitly states the supported range (8.x at 8.14+, or 9.x).","triggerScenarios":"Applying the Spring Boot plugin (plugins { id 'org.springframework.boot' }) calls apply() -> verifyGradleVersion(); GradleVersion.current().compareTo(GradleVersion.version(\"8.14\")) < 0 throws at line 129.","commonSituations":"Upgrading Spring Boot to a version that raised the Gradle floor without upgrading the wrapper; CI using a system Gradle older than the wrapper; IDE-bundled Gradle older than 8.14; a Docker build image with an old Gradle.","solutions":["Upgrade the Gradle wrapper to 8.14+ (or 9.x): ./gradlew wrapper --gradle-version 8.14.","If a system Gradle is used in CI/Docker, install Gradle >= 8.14.","Align IDE Gradle distribution with the wrapper (Settings > Gradle > Use Gradle from: gradle-wrapper.properties).","If you cannot upgrade Gradle, downgrade Spring Boot to a version whose minimum matches your Gradle."],"exampleFix":"// before: gradle/wrapper/gradle-wrapper.properties\n//   distributionUrl=https\\://services.gradle.org/distributions/gradle-8.10-bin.zip\n// after:\n//   distributionUrl=https\\://services.gradle.org/distributions/gradle-8.14-bin.zip\n// or run:\n//   ./gradlew wrapper --gradle-version 8.14\n","handlingStrategy":"validation","validationCode":"// Fail fast with a clear message before applying the plugin\nimport org.gradle.util.GradleVersion\n\nif (GradleVersion.current() < GradleVersion.version(\"8.14\")) {\n    throw GradleException(\"Spring Boot requires Gradle 8.14+. Current: ${GradleVersion.current()}\")\n}\nproject.pluginManager.apply(\"org.springframework.boot\")\n","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Commit gradle-wrapper.properties pinning Gradle >= 8.14.","Configure CI to use the wrapper (./gradlew) rather than a system Gradle.","Align IDE Gradle distribution with the wrapper."],"tags":["gradle","version-compat","plugin-apply","setup","version-gate"],"analyzedSha":"5b2dbdbb8be64415eb6552f81ff7c449c8d251e6","analyzedAt":"2026-08-04T18:53:14.967Z","schemaVersion":2}