@@ -24,6 +24,7 @@ import io.spring.gradle.dependencymanagement.dsl.DependencyManagementExtension
2424import org.apache.tools.ant.filters.EscapeUnicode
2525import org.apache.tools.ant.filters.ReplaceTokens
2626import org.apache.tools.ant.taskdefs.condition.Os
27+ import org.gradle.api.GradleException
2728import org.gradle.api.Plugin
2829import org.gradle.api.Project
2930import org.gradle.api.Task
@@ -45,6 +46,7 @@ import org.gradle.api.tasks.testing.Test
4546import org.gradle.language.jvm.tasks.ProcessResources
4647import org.gradle.process.JavaForkOptions
4748import org.gradle.tooling.provider.model.ToolingModelBuilderRegistry
49+ import org.gradle.util.GradleVersion
4850import org.springframework.boot.gradle.dsl.SpringBootExtension
4951import org.springframework.boot.gradle.plugin.SpringBootPlugin
5052import org.springframework.boot.gradle.tasks.run.BootRun
@@ -89,6 +91,8 @@ class GrailsGradlePlugin extends GroovyPlugin {
8991 }
9092
9193 void apply (Project project ) {
94+ verifyGradleVersion()
95+
9296 grailsAppDir = SourceSets . resolveGrailsAppDir(project)
9397 grailsVersion = resolveGrailsVersion(project)
9498
@@ -715,6 +719,15 @@ withConfig(configuration) {
715719 fileCollection
716720 }
717721
722+ private void verifyGradleVersion () {
723+ GradleVersion currentVersion = GradleVersion . current()
724+ if (currentVersion < GradleVersion . version(' 7.6.4' ) ||
725+ (currentVersion >= GradleVersion . version(' 8.0' ) && currentVersion < GradleVersion . version(' 8.3' ))) {
726+ throw new GradleException (' Grace plugin requires Gradle 7.x (7.6.4 or later) or 8.x (8.3 or later). '
727+ + ' The current version is ' + currentVersion)
728+ }
729+ }
730+
718731 enum GrailsProjectType {
719732 NONE ,
720733
0 commit comments