buildscript { dependencies { classpath 'io.spring.gradle:spring-build-conventions:0.0.33.RELEASE' classpath "io.spring.javaformat:spring-javaformat-gradle-plugin:$springJavaformatVersion" classpath "org.springframework.boot:spring-boot-gradle-plugin:$springBootVersion" classpath 'io.spring.nohttp:nohttp-gradle:0.0.5.RELEASE' classpath "io.freefair.gradle:aspectj-plugin:5.0.1" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" } repositories { maven { url 'https://repo.spring.io/plugins-snapshot' } maven { url 'https://plugins.gradle.org/m2/' } } } apply plugin: 'io.spring.nohttp' apply plugin: 'locks' apply plugin: 'io.spring.convention.root' apply plugin: 'org.jetbrains.kotlin.jvm' group = 'org.springframework.security' description = 'Spring Security' ext.snapshotBuild = version.contains("SNAPSHOT") ext.releaseBuild = version.contains("SNAPSHOT") ext.milestoneBuild = !(snapshotBuild || releaseBuild) dependencyManagementExport.projects = subprojects.findAll { !it.name.contains('-boot') } repositories { mavenCentral() } subprojects { plugins.withType(JavaPlugin) { project.sourceCompatibility='1.8' } tasks.withType(JavaCompile) { options.encoding = "UTF-8" } } allprojects { if (!['spring-security-bom', 'spring-security-docs'].contains(project.name)) { apply plugin: 'io.spring.javaformat' apply plugin: 'checkstyle' pluginManager.withPlugin("io.spring.convention.checkstyle", { plugin -> configure(plugin) { dependencies { checkstyle "io.spring.javaformat:spring-javaformat-checkstyle:$springJavaformatVersion" } checkstyle { toolVersion = '8.34' } } }) if (project.name.contains('sample')) { tasks.whenTaskAdded { task -> if (task.name.contains('format') || task.name.contains('checkFormat') || task.name.contains("checkstyle")) { task.enabled = false } } } } } if (hasProperty('buildScan')) { buildScan { termsOfServiceUrl = 'https://gradle.com/terms-of-service' termsOfServiceAgree = 'yes' } } nohttp { allowlistFile = project.file("etc/nohttp/allowlist.lines") }