task checkDependencies << { verifyNoDependenciesMatchingVersion(".*-SNAPSHOT") if(releaseBuild) { verifyNoDependenciesMatchingVersion(".*M.*") verifyNoDependenciesMatchingVersion(".*RC.*") } } if(!snapshotBuild) { tasks.findByPath('check')?.dependsOn checkDependencies } def verifyNoDependenciesMatchingVersion(def pattern) { def dependencies = configurations.all*.allDependencies*.findAll { d -> def ignored = 'io.spring.platform:platform-versions' def groupAndName = "$d.group:$d.name".toString() ignored != groupAndName && d.version?.matches(pattern) }.flatten().toSet().join("\n ") if(dependencies) { throw new GradleException("${project.name} cannot have dependencies with a version that matches $pattern when its version is ${project.version}. Got\n $dependencies") } }