From 0de466e06efd8617ed00d4f6a54d5311464d1d3a Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Mon, 15 Jun 2020 20:51:51 +0100 Subject: [PATCH] Require dependency on s-b-dependencies to use its constraints Previously, Spring Boot's modules published Gradle Module Metadata (GMM) the declared a platform dependency on spring-boot-dependencies. This provided versions for each module's own dependencies but also had they unwanted side-effect of pulling in spring-boot-dependencies constraints which would influence the version of other dependencies declared in the same configuration. This was undesirable as users should be able to opt in to this level of dependency management, either by using the dependency management plugin or by using Gradle's built-in support via a platform dependency on spring-boot-dependencies. This commit reworks how Spring Boot's build uses spring-boot-dependencies and spring-boot-parent to provide its own dependency management. Configurations that aren't seen by consumers are configured to extend a dependencyManagement configuration that has an enforced platform dependency on spring-boot-parent. This enforces spring-boot-parent's version constraints on Spring Boot's build without making them visible to consumers. To ensure that the versions that Spring Boot has been built against are visible to consumers, the Maven publication that produces pom files and GMM for the published modules is configured to use the resolved versions from the module's runtime classpath. Fixes gh-21911 --- buildSrc/build.gradle | 4 -- .../InternalDependencyManagementPlugin.java | 60 ------------------- .../boot/build/JavaConventions.java | 26 ++++++++ .../build/MavenPublishingConventions.java | 24 +++++++- .../boot/build/starters/StarterPlugin.java | 2 - .../boot/build/ConventionsPluginTests.java | 11 ++++ .../build.gradle | 8 +-- .../spring-boot-actuator/build.gradle | 2 - .../spring-boot-autoconfigure/build.gradle | 4 -- .../spring-boot-cli/build.gradle | 3 - .../spring-boot-devtools/build.gradle | 7 +-- .../spring-boot-docs/build.gradle | 5 +- .../spring-boot-parent/build.gradle | 1 - .../build.gradle | 2 - .../spring-boot-starter-activemq/build.gradle | 1 - .../spring-boot-starter-actuator/build.gradle | 1 - .../spring-boot-starter-amqp/build.gradle | 1 - .../spring-boot-starter-aop/build.gradle | 1 - .../spring-boot-starter-artemis/build.gradle | 1 - .../spring-boot-starter-batch/build.gradle | 1 - .../spring-boot-starter-cache/build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-data-jpa/build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-hateoas/build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-jdbc/build.gradle | 1 - .../spring-boot-starter-jersey/build.gradle | 1 - .../spring-boot-starter-jetty/build.gradle | 1 - .../spring-boot-starter-jooq/build.gradle | 1 - .../spring-boot-starter-json/build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-log4j2/build.gradle | 1 - .../spring-boot-starter-logging/build.gradle | 1 - .../spring-boot-starter-mail/build.gradle | 1 - .../spring-boot-starter-mustache/build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-quartz/build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-rsocket/build.gradle | 1 - .../spring-boot-starter-security/build.gradle | 1 - .../spring-boot-starter-test/build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-tomcat/build.gradle | 1 - .../spring-boot-starter-undertow/build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter-web/build.gradle | 1 - .../spring-boot-starter-webflux/build.gradle | 1 - .../build.gradle | 1 - .../spring-boot-starter/build.gradle | 1 - .../build.gradle | 3 - .../spring-boot-test/build.gradle | 3 - .../spring-boot-antlib/build.gradle | 3 - .../build.gradle | 2 - .../build.gradle | 1 - .../spring-boot-gradle-plugin/build.gradle | 10 +--- .../build.gradle | 4 -- .../spring-boot-loader-tools/build.gradle | 10 ++-- .../spring-boot-loader/build.gradle | 3 - .../spring-boot-maven-plugin/build.gradle | 5 -- .../spring-boot-test-support/build.gradle | 1 - spring-boot-project/spring-boot/build.gradle | 4 -- .../spring-boot-deployment-tests/build.gradle | 6 ++ .../spring-boot-smoke-test-ant/build.gradle | 5 +- .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 1 - .../build.gradle | 7 ++- .../build.gradle | 2 +- .../build.gradle | 6 ++ .../build.gradle | 6 ++ .../spring-boot-smoke-test-war/build.gradle | 7 ++- .../build.gradle | 6 ++ .../build.gradle | 6 ++ 92 files changed, 122 insertions(+), 194 deletions(-) delete mode 100644 buildSrc/src/main/java/org/springframework/boot/build/InternalDependencyManagementPlugin.java diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle index 33a07fcea0d..4dd42090a95 100644 --- a/buildSrc/build.gradle +++ b/buildSrc/build.gradle @@ -54,10 +54,6 @@ gradlePlugin { id = "org.springframework.boot.conventions" implementationClass = "org.springframework.boot.build.ConventionsPlugin" } - dependencyManagementPlugin { - id = "org.springframework.boot.internal-dependency-management" - implementationClass = "org.springframework.boot.build.InternalDependencyManagementPlugin" - } deployedPlugin { id = "org.springframework.boot.deployed" implementationClass = "org.springframework.boot.build.DeployedPlugin" diff --git a/buildSrc/src/main/java/org/springframework/boot/build/InternalDependencyManagementPlugin.java b/buildSrc/src/main/java/org/springframework/boot/build/InternalDependencyManagementPlugin.java deleted file mode 100644 index 229045e8ae2..00000000000 --- a/buildSrc/src/main/java/org/springframework/boot/build/InternalDependencyManagementPlugin.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright 2020-2020 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.boot.build; - -import java.util.Collections; - -import org.gradle.api.Plugin; -import org.gradle.api.Project; -import org.gradle.api.artifacts.Configuration; -import org.gradle.api.artifacts.ConfigurationContainer; -import org.gradle.api.artifacts.Dependency; -import org.gradle.api.plugins.JavaBasePlugin; - -import org.springframework.boot.build.optional.OptionalDependenciesPlugin; - -/** - * Plugin to apply internal dependency management to Spring Boot's projects. Uses a custom - * configuration to enforce a platform for Spring Boot's own build. This prevents the - * enforced (strict) constraints from being visible to external consumers. - * - * @author Andy Wilkinson - */ -public class InternalDependencyManagementPlugin implements Plugin { - - @Override - public void apply(Project project) { - project.getPlugins().withType(JavaBasePlugin.class, (java) -> configureDependencyManagement(project)); - } - - private void configureDependencyManagement(Project project) { - ConfigurationContainer configurations = project.getConfigurations(); - Configuration dependencyManagement = configurations.create("internalDependencyManagement", (configuration) -> { - configuration.setVisible(false); - configuration.setCanBeConsumed(false); - configuration.setCanBeResolved(false); - }); - configurations.matching((configuration) -> configuration.getName().endsWith("Classpath")) - .all((configuration) -> configuration.extendsFrom(dependencyManagement)); - Dependency springBootParent = project.getDependencies().enforcedPlatform(project.getDependencies() - .project(Collections.singletonMap("path", ":spring-boot-project:spring-boot-parent"))); - dependencyManagement.getDependencies().add(springBootParent); - project.getPlugins().withType(OptionalDependenciesPlugin.class, (optionalDependencies) -> configurations - .getByName(OptionalDependenciesPlugin.OPTIONAL_CONFIGURATION_NAME).extendsFrom(dependencyManagement)); - } - -} diff --git a/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java b/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java index 62a52ff5c5f..e096d9a4afe 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java @@ -17,6 +17,7 @@ package org.springframework.boot.build; import java.io.File; import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.TreeMap; @@ -25,8 +26,12 @@ import java.util.function.Consumer; import io.spring.javaformat.gradle.FormatTask; import io.spring.javaformat.gradle.SpringJavaFormatPlugin; import org.gradle.api.Project; +import org.gradle.api.artifacts.Configuration; +import org.gradle.api.artifacts.ConfigurationContainer; +import org.gradle.api.artifacts.Dependency; import org.gradle.api.artifacts.DependencySet; import org.gradle.api.plugins.JavaBasePlugin; +import org.gradle.api.plugins.JavaPlugin; import org.gradle.api.plugins.quality.CheckstyleExtension; import org.gradle.api.plugins.quality.CheckstylePlugin; import org.gradle.api.tasks.bundling.Jar; @@ -36,6 +41,7 @@ import org.gradle.api.tasks.testing.Test; import org.gradle.testretry.TestRetryPlugin; import org.gradle.testretry.TestRetryTaskExtension; +import org.springframework.boot.build.optional.OptionalDependenciesPlugin; import org.springframework.boot.build.testing.TestFailuresPlugin; /** @@ -60,6 +66,7 @@ import org.springframework.boot.build.testing.TestFailuresPlugin; *
  • {@code Implementation-Title} *
  • {@code Implementation-Version} * + *
  • {@code spring-boot-parent} is used for dependency management
  • * * *

    @@ -80,6 +87,7 @@ class JavaConventions { configureJavadocConventions(project); configureTestConventions(project); configureJarManifestConventions(project); + configureDependencyManagement(project); }); } @@ -164,4 +172,22 @@ class JavaConventions { .add(project.getDependencies().create("io.spring.javaformat:spring-javaformat-checkstyle:" + version)); } + private void configureDependencyManagement(Project project) { + ConfigurationContainer configurations = project.getConfigurations(); + Configuration dependencyManagement = configurations.create("dependencyManagement", (configuration) -> { + configuration.setVisible(false); + configuration.setCanBeConsumed(false); + configuration.setCanBeResolved(false); + }); + configurations + .matching((configuration) -> configuration.getName().endsWith("Classpath") + || JavaPlugin.ANNOTATION_PROCESSOR_CONFIGURATION_NAME.equals(configuration.getName())) + .all((configuration) -> configuration.extendsFrom(dependencyManagement)); + Dependency springBootParent = project.getDependencies().enforcedPlatform(project.getDependencies() + .project(Collections.singletonMap("path", ":spring-boot-project:spring-boot-parent"))); + dependencyManagement.getDependencies().add(springBootParent); + project.getPlugins().withType(OptionalDependenciesPlugin.class, (optionalDependencies) -> configurations + .getByName(OptionalDependenciesPlugin.OPTIONAL_CONFIGURATION_NAME).extendsFrom(dependencyManagement)); + } + } diff --git a/buildSrc/src/main/java/org/springframework/boot/build/MavenPublishingConventions.java b/buildSrc/src/main/java/org/springframework/boot/build/MavenPublishingConventions.java index 098ebf59e83..a763df9dde1 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/MavenPublishingConventions.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/MavenPublishingConventions.java @@ -18,6 +18,7 @@ package org.springframework.boot.build; import org.apache.maven.artifact.repository.MavenArtifactRepository; import org.gradle.api.Project; +import org.gradle.api.attributes.Usage; import org.gradle.api.plugins.JavaPlugin; import org.gradle.api.plugins.JavaPluginExtension; import org.gradle.api.publish.PublishingExtension; @@ -40,8 +41,12 @@ import org.gradle.api.publish.maven.plugins.MavenPublishPlugin; * it. *

  • The poms of all {@link MavenPublication Maven publications} are customized to meet * Maven Central's requirements. - *
  • If the {@link JavaPlugin Java plugin} has also been applied, creation of Javadoc - * and source jars is enabled. + *
  • If the {@link JavaPlugin Java plugin} has also been applied: + *
      + *
    • Creation of Javadoc and source jars is enabled. + *
    • Publication metadata (poms and Gradle module metadata) is configured to use + * resolved versions. + *
    * * *

    @@ -62,7 +67,7 @@ class MavenPublishingConventions { }); } publishing.getPublications().withType(MavenPublication.class) - .all((mavenPublication) -> customizePom(mavenPublication.getPom(), project)); + .all((mavenPublication) -> customizeMavenPublication(mavenPublication, project)); project.getPlugins().withType(JavaPlugin.class).all((javaPlugin) -> { JavaPluginExtension extension = project.getExtensions().getByType(JavaPluginExtension.class); extension.withJavadocJar(); @@ -71,6 +76,12 @@ class MavenPublishingConventions { }); } + private void customizeMavenPublication(MavenPublication publication, Project project) { + customizePom(publication.getPom(), project); + project.getPlugins().withType(JavaPlugin.class) + .all((javaPlugin) -> customizeJavaMavenPublication(publication, project)); + } + private void customizePom(MavenPom pom, Project project) { pom.getUrl().set("https://spring.io/projects/spring-boot"); pom.getName().set(project.provider(project::getName)); @@ -82,6 +93,13 @@ class MavenPublishingConventions { pom.issueManagement(this::customizeIssueManagement); } + private void customizeJavaMavenPublication(MavenPublication publication, Project project) { + publication.versionMapping((strategy) -> strategy.usage(Usage.JAVA_API, (mappingStrategy) -> mappingStrategy + .fromResolutionOf(JavaPlugin.RUNTIME_CLASSPATH_CONFIGURATION_NAME))); + publication.versionMapping((strategy) -> strategy.usage(Usage.JAVA_RUNTIME, + (mappingStrategy) -> mappingStrategy.fromResolutionResult())); + } + private void customizeOrganization(MavenPomOrganization organization) { organization.getName().set("Pivotal Software, Inc."); organization.getUrl().set("https://spring.io"); diff --git a/buildSrc/src/main/java/org/springframework/boot/build/starters/StarterPlugin.java b/buildSrc/src/main/java/org/springframework/boot/build/starters/StarterPlugin.java index 7e221addee4..76a9867f290 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/starters/StarterPlugin.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/starters/StarterPlugin.java @@ -29,7 +29,6 @@ import org.gradle.api.plugins.PluginContainer; import org.springframework.boot.build.ConventionsPlugin; import org.springframework.boot.build.DeployedPlugin; -import org.springframework.boot.build.InternalDependencyManagementPlugin; import org.springframework.boot.build.classpath.CheckClasspathForConflicts; import org.springframework.boot.build.classpath.CheckClasspathForProhibitedDependencies; import org.springframework.util.StringUtils; @@ -47,7 +46,6 @@ public class StarterPlugin implements Plugin { plugins.apply(DeployedPlugin.class); plugins.apply(JavaLibraryPlugin.class); plugins.apply(ConventionsPlugin.class); - plugins.apply(InternalDependencyManagementPlugin.class); StarterMetadata starterMetadata = project.getTasks().create("starterMetadata", StarterMetadata.class); ConfigurationContainer configurations = project.getConfigurations(); Configuration runtimeClasspath = configurations.getByName(JavaPlugin.RUNTIME_CLASSPATH_CONFIGURATION_NAME); diff --git a/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java b/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java index 4af34be3851..d8e92ff1c47 100644 --- a/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java +++ b/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java @@ -51,6 +51,17 @@ class ConventionsPluginTests { void setup(@TempDir File projectDir) throws IOException { this.projectDir = projectDir; this.buildFile = new File(this.projectDir, "build.gradle"); + File settingsFile = new File(this.projectDir, "settings.gradle"); + try (PrintWriter out = new PrintWriter(new FileWriter(settingsFile))) { + out.println("include ':spring-boot-project:spring-boot-parent'"); + } + File springBootParent = new File(this.projectDir, "spring-boot-project/spring-boot-parent/build.gradle"); + springBootParent.getParentFile().mkdirs(); + try (PrintWriter out = new PrintWriter(new FileWriter(springBootParent))) { + out.println("plugins {"); + out.println(" id 'java-platform'"); + out.println("}"); + } } @Test diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle b/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle index 61b07a921f6..eb50381e06d 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle @@ -5,22 +5,21 @@ plugins { id "org.springframework.boot.auto-configuration" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.optional-dependencies" } description = "Spring Boot Actuator AutoConfigure" configurations { - asciidoctorExtensions + asciidoctorExtensions { + extendsFrom dependencyManagement + } documentation } dependencies { - asciidoctorExtensions(platform(project(":spring-boot-project:spring-boot-dependencies"))) asciidoctorExtensions("org.springframework.restdocs:spring-restdocs-asciidoctor") - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-actuator")) api(project(":spring-boot-project:spring-boot")) @@ -29,7 +28,6 @@ dependencies { implementation("com.fasterxml.jackson.core:jackson-databind") implementation("com.fasterxml.jackson.datatype:jackson-datatype-jsr310") - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("ch.qos.logback:logback-classic") optional("com.fasterxml.jackson.dataformat:jackson-dataformat-xml") optional("com.github.ben-manes.caffeine:caffeine") diff --git a/spring-boot-project/spring-boot-actuator/build.gradle b/spring-boot-project/spring-boot-actuator/build.gradle index 26598287084..9afa06c00c8 100644 --- a/spring-boot-project/spring-boot-actuator/build.gradle +++ b/spring-boot-project/spring-boot-actuator/build.gradle @@ -9,10 +9,8 @@ plugins { description = "Spring Boot Actuator" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot")) - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("com.fasterxml.jackson.core:jackson-databind") optional("com.github.ben-manes.caffeine:caffeine") optional("com.hazelcast:hazelcast") diff --git a/spring-boot-project/spring-boot-autoconfigure/build.gradle b/spring-boot-project/spring-boot-autoconfigure/build.gradle index c40d9f621d6..ef0a410fb20 100644 --- a/spring-boot-project/spring-boot-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-autoconfigure/build.gradle @@ -4,7 +4,6 @@ plugins { id "org.springframework.boot.auto-configuration" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.optional-dependencies" } @@ -12,9 +11,7 @@ description = "Spring Boot AutoConfigure" dependencies { api(project(":spring-boot-project:spring-boot")) - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("com.atomikos:transactions-jdbc") optional("com.atomikos:transactions-jta") optional("com.fasterxml.jackson.core:jackson-databind") @@ -151,7 +148,6 @@ dependencies { optional("org.thymeleaf.extras:thymeleaf-extras-springsecurity5") optional("redis.clients:jedis") - testImplementation(platform(project(":spring-boot-project:spring-boot-parent"))) testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) testImplementation(project(":spring-boot-project:spring-boot-test")) testImplementation("ch.qos.logback:logback-classic") diff --git a/spring-boot-project/spring-boot-cli/build.gradle b/spring-boot-project/spring-boot-cli/build.gradle index 74093371758..12d967371e8 100644 --- a/spring-boot-project/spring-boot-cli/build.gradle +++ b/spring-boot-project/spring-boot-cli/build.gradle @@ -3,7 +3,6 @@ plugins { id "org.springframework.boot.deployed" id "org.springframework.boot.conventions" id "org.springframework.boot.integration-test" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot CLI" @@ -22,7 +21,6 @@ dependencies { dependenciesBom(project(path: ":spring-boot-project:spring-boot-dependencies", configuration: "effectiveBom")) - implementation(platform(project(":spring-boot-project:spring-boot-parent"))) implementation(project(":spring-boot-project:spring-boot-tools:spring-boot-loader-tools")) implementation("com.vaadin.external.google:android-json") implementation("jline:jline") @@ -50,7 +48,6 @@ dependencies { implementation("org.springframework:spring-core") implementation("org.springframework.security:spring-security-crypto") - intTestImplementation(platform(project(":spring-boot-project:spring-boot-dependencies"))) intTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-loader-tools")) intTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) intTestImplementation("org.assertj:assertj-core") diff --git a/spring-boot-project/spring-boot-devtools/build.gradle b/spring-boot-project/spring-boot-devtools/build.gradle index 9865d7a78f8..15d7070024a 100644 --- a/spring-boot-project/spring-boot-devtools/build.gradle +++ b/spring-boot-project/spring-boot-devtools/build.gradle @@ -4,18 +4,18 @@ plugins { id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" id "org.springframework.boot.integration-test" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.optional-dependencies" } description = "Spring Boot Developer Tools" configurations { - intTestDependencies + intTestDependencies { + extendsFrom dependencyManagement + } } dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot")) api(project(":spring-boot-project:spring-boot-autoconfigure")) @@ -32,7 +32,6 @@ dependencies { intTestRuntimeOnly("org.springframework:spring-web") - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("javax.servlet:javax.servlet-api") optional("org.apache.derby:derby") optional("org.hibernate:hibernate-core") diff --git a/spring-boot-project/spring-boot-docs/build.gradle b/spring-boot-project/spring-boot-docs/build.gradle index b4ecc0c881b..0e69688b101 100644 --- a/spring-boot-project/spring-boot-docs/build.gradle +++ b/spring-boot-project/spring-boot-docs/build.gradle @@ -10,7 +10,9 @@ description = "Spring Boot Docs" configurations { actuatorApiDocumentation - asciidoctorExtensions + asciidoctorExtensions { + extendsFrom dependencyManagement + } autoConfiguration configurationProperties gradlePluginDocumentation @@ -40,7 +42,6 @@ plugins.withType(EclipsePlugin) { dependencies { actuatorApiDocumentation(project(path: ":spring-boot-project:spring-boot-actuator-autoconfigure", configuration: "documentation")) - asciidoctorExtensions(platform(project(":spring-boot-project:spring-boot-parent"))) asciidoctorExtensions("io.spring.asciidoctor:spring-asciidoctor-extensions-spring-boot") asciidoctorExtensions(project(path: ":spring-boot-project:spring-boot-actuator-autoconfigure")) asciidoctorExtensions(project(path: ":spring-boot-project:spring-boot-autoconfigure")) diff --git a/spring-boot-project/spring-boot-parent/build.gradle b/spring-boot-project/spring-boot-parent/build.gradle index a1e8839b137..9fae65e5a79 100644 --- a/spring-boot-project/spring-boot-parent/build.gradle +++ b/spring-boot-project/spring-boot-parent/build.gradle @@ -2,7 +2,6 @@ plugins { id "java-platform" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Parent" diff --git a/spring-boot-project/spring-boot-properties-migrator/build.gradle b/spring-boot-project/spring-boot-properties-migrator/build.gradle index 5d897dcd62c..cd9da1f879a 100644 --- a/spring-boot-project/spring-boot-properties-migrator/build.gradle +++ b/spring-boot-project/spring-boot-properties-migrator/build.gradle @@ -2,13 +2,11 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Properties Migrator" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot")) api(project(":spring-boot-project:spring-boot-tools:spring-boot-configuration-metadata")) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-activemq/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-activemq/build.gradle index 9e8c7a64d61..a57e591da8f 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-activemq/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-activemq/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for JMS messaging using Apache ActiveMQ" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-jms") api("org.apache.activemq:activemq-broker") { diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle index 3816c3191ff..4c4d4c90896 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-actuator/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Boot's Actuator which provides production ready features to help you monitor and manage your application" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-actuator-autoconfigure")) api("io.micrometer:micrometer-core") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-amqp/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-amqp/build.gradle index a419d218c88..11866780060 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-amqp/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-amqp/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring AMQP and Rabbit MQ" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-messaging") api("org.springframework.amqp:spring-rabbit") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-aop/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-aop/build.gradle index c49a5591b9f..895dc5ecacb 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-aop/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-aop/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for aspect-oriented programming with Spring AOP and AspectJ" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-aop") api("org.aspectj:aspectjweaver") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-artemis/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-artemis/build.gradle index 166751a25c1..46b50d3b723 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-artemis/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-artemis/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for JMS messaging using Apache Artemis" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("jakarta.jms:jakarta.jms-api") api("jakarta.json:jakarta.json-api") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-batch/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-batch/build.gradle index a651a556857..7f27a2af880 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-batch/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-batch/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Batch" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-jdbc")) api("org.springframework.batch:spring-batch-core") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-cache/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-cache/build.gradle index c57a4330346..bb7fb848571 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-cache/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-cache/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Framework's caching support" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-context-support") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle index 3b3669a95ce..ed3412b9f51 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra-reactive/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Cassandra distributed database and Spring Data Cassandra Reactive" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-tx") api("org.springframework.data:spring-data-cassandra") { diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra/build.gradle index 942ed726c30..1f062dda7ce 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-cassandra/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Cassandra distributed database and Spring Data Cassandra" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-tx") api("org.springframework.data:spring-data-cassandra") { diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle index bf450cf10cf..3526546e1b1 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase-reactive/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Couchbase document-oriented database and Spring Data Couchbase Reactive" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("io.projectreactor:reactor-core") api("io.reactivex:rxjava-reactive-streams") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle index 3255a0518ed..1ab91a08771 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-couchbase/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Couchbase document-oriented database and Spring Data Couchbase" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework.data:spring-data-couchbase") { exclude group: "com.couchbase.client", module: "encryption" diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-elasticsearch/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-elasticsearch/build.gradle index c49a8b40f3e..850aa79197e 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-elasticsearch/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-elasticsearch/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Elasticsearch search and analytics engine and Spring Data Elasticsearch" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework.data:spring-data-elasticsearch") { exclude group: "org.elasticsearch.client", module: "transport" diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle index ede1694ad24..8ecfbed5f2e 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jdbc/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Data JDBC" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-jdbc")) api("org.springframework.data:spring-data-jdbc") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jpa/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jpa/build.gradle index fc1da7d5052..6f7bd7c91c3 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jpa/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-jpa/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Data JPA with Hibernate" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-aop")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-jdbc")) api("jakarta.transaction:jakarta.transaction-api") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-ldap/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-ldap/build.gradle index 827d68db61f..041112d8af6 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-ldap/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-ldap/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Data LDAP" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework.data:spring-data-ldap") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle index bd3706b70d1..a1e5636e97c 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb-reactive/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using MongoDB document-oriented database and Spring Data MongoDB Reactive" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("io.projectreactor:reactor-core") api("org.mongodb:mongodb-driver-reactivestreams") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb/build.gradle index 58b753d06fb..dfeb2fd6acb 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-mongodb/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using MongoDB document-oriented database and Spring Data MongoDB" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.mongodb:mongodb-driver-sync") api("org.springframework.data:spring-data-mongodb") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-neo4j/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-neo4j/build.gradle index c64486658a3..cc50d8e552a 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-neo4j/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-neo4j/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Neo4j graph database and Spring Data Neo4j" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework.data:spring-data-neo4j") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-r2dbc/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-r2dbc/build.gradle index 79d51a12612..2c35202593b 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-r2dbc/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-r2dbc/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Data R2DBC" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework.data:spring-data-r2dbc") api("io.r2dbc:r2dbc-spi") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle index d1898308832..d66f98dcfc4 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis-reactive/build.gradle @@ -5,6 +5,5 @@ plugins { description = "Starter for using Redis key-value data store with Spring Data Redis reactive and the Lettuce client" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-redis")) } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis/build.gradle index 4ee078a5960..11f150cd1ee 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-redis/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Redis key-value data store with Spring Data Redis and the Lettuce client" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework.data:spring-data-redis") api("io.lettuce:lettuce-core") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-rest/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-rest/build.gradle index 8bcf8e9adf0..1fce3609bd1 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-rest/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-rest/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for exposing Spring Data repositories over REST using Spring Data REST" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) api("org.springframework.data:spring-data-rest-webmvc") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-solr/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-solr/build.gradle index 64b877a3b2c..c7517eb78f1 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-data-solr/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-data-solr/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using the Apache Solr search platform with Spring Data Solr" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.apache.solr:solr-solrj") { exclude group: "org.slf4j", module: "jcl-over-slf4j" diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-freemarker/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-freemarker/build.gradle index 8aacfcba7e2..47930b9c569 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-freemarker/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-freemarker/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building MVC web applications using FreeMarker views" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.freemarker:freemarker") api("org.springframework:spring-context-support") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-groovy-templates/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-groovy-templates/build.gradle index 665019187bd..45bd1056726 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-groovy-templates/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-groovy-templates/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building MVC web applications using Groovy Templates views" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) api("org.codehaus.groovy:groovy-templates") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-hateoas/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-hateoas/build.gradle index f1b6227c5ee..a4d3560b1b4 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-hateoas/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-hateoas/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building hypermedia-based RESTful web application with Spring MVC and Spring HATEOAS" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) api("org.springframework.hateoas:spring-hateoas") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-integration/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-integration/build.gradle index 9dec4e1eaef..0ce04e823db 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-integration/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-integration/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Integration" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-aop")) api("org.springframework.integration:spring-integration-core") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-jdbc/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-jdbc/build.gradle index c482dc1dc73..352c3570e92 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-jdbc/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-jdbc/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using JDBC with the HikariCP connection pool" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("com.zaxxer:HikariCP") api("org.springframework:spring-jdbc") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-jersey/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-jersey/build.gradle index 9f3263f4a1d..86856716c04 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-jersey/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-jersey/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building RESTful web applications using JAX-RS and Jersey. An alternative to spring-boot-starter-web" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-json")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-tomcat")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-validation")) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-jetty/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-jetty/build.gradle index b51b6402583..8bcedb6efcb 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-jetty/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-jetty/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Jetty as the embedded servlet container. An alternative to spring-boot-starter-tomcat" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api("jakarta.servlet:jakarta.servlet-api") api("jakarta.websocket:jakarta.websocket-api") api("org.eclipse.jetty:jetty-servlets") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-jooq/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-jooq/build.gradle index 51276a45e12..734f55a8032 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-jooq/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-jooq/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using jOOQ to access SQL databases. An alternative to spring-boot-starter-data-jpa or spring-boot-starter-jdbc" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-jdbc")) api("jakarta.activation:jakarta.activation-api") api("jakarta.xml.bind:jakarta.xml.bind-api") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-json/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-json/build.gradle index 5dce792b47e..67ec39087e2 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-json/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-json/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for reading and writing json" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-web") api("com.fasterxml.jackson.core:jackson-databind") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-atomikos/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-atomikos/build.gradle index 145abe1ed98..cc9c208b503 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-atomikos/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-atomikos/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for JTA transactions using Atomikos" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("com.atomikos:transactions-jms") api("com.atomikos:transactions-jta") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-bitronix/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-bitronix/build.gradle index ee541b4a07e..782e07209f0 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-bitronix/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-jta-bitronix/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for JTA transactions using Bitronix. Deprecated since 2.3.0" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("jakarta.jms:jakarta.jms-api") api("jakarta.transaction:jakarta.transaction-api") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-log4j2/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-log4j2/build.gradle index 9d8e8c4f1da..a7336d6c952 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-log4j2/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-log4j2/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Log4j2 for logging. An alternative to spring-boot-starter-logging" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api("org.apache.logging.log4j:log4j-slf4j-impl") api("org.apache.logging.log4j:log4j-core") api("org.apache.logging.log4j:log4j-jul") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-logging/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-logging/build.gradle index 7cdb7672779..ac7d3a5681e 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-logging/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-logging/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for logging using Logback. Default logging starter" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api("ch.qos.logback:logback-classic") api("org.apache.logging.log4j:log4j-to-slf4j") api("org.slf4j:jul-to-slf4j") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-mail/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-mail/build.gradle index 5bf1ed01342..07ae4666254 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-mail/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-mail/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Java Mail and Spring Framework's email sending support" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-context-support") api("com.sun.mail:jakarta.mail") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-mustache/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-mustache/build.gradle index 239563fe204..5a05079f572 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-mustache/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-mustache/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building web applications using Mustache views" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("com.samskivert:jmustache") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-client/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-client/build.gradle index 6f5f5f78e74..3df25780ed6 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-client/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-client/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Security's OAuth2/OpenID Connect client features" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("com.sun.mail:jakarta.mail") api("org.springframework.security:spring-security-config") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-resource-server/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-resource-server/build.gradle index c6e208e44f3..a91da01d8d6 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-resource-server/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-oauth2-resource-server/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Security's OAuth2 resource server features" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework.security:spring-security-config") api("org.springframework.security:spring-security-core") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-quartz/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-quartz/build.gradle index 166bb32d8cb..a0e033852e0 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-quartz/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-quartz/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using the Quartz scheduler" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-context-support") api("org.springframework:spring-tx") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-reactor-netty/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-reactor-netty/build.gradle index 26526c31c65..abf74f4b83d 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-reactor-netty/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-reactor-netty/build.gradle @@ -5,6 +5,5 @@ plugins { description = "Starter for using Reactor Netty as the embedded reactive HTTP server." dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api("io.projectreactor.netty:reactor-netty") } diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-rsocket/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-rsocket/build.gradle index e7fee3bc5a1..f4a11678fce 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-rsocket/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-rsocket/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building RSocket clients and servers" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-json")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-reactor-netty")) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-security/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-security/build.gradle index 21789d67d6c..c6e63f44efa 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-security/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-security/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Security" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.springframework:spring-aop") api("org.springframework.security:spring-security-config") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-test/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-test/build.gradle index d852b9138c5..7358f79762e 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-test/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-test/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for testing Spring Boot applications with libraries including JUnit, Hamcrest and Mockito" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-test")) api(project(":spring-boot-project:spring-boot-test-autoconfigure")) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-thymeleaf/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-thymeleaf/build.gradle index 3854f08ab53..a3a0cefe185 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-thymeleaf/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-thymeleaf/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building MVC web applications using Thymeleaf views" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.thymeleaf:thymeleaf-spring5") api("org.thymeleaf.extras:thymeleaf-extras-java8time") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-tomcat/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-tomcat/build.gradle index 89e58517b02..c30dc1cc4af 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-tomcat/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-tomcat/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Tomcat as the embedded servlet container. Default servlet container starter used by spring-boot-starter-web" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api("jakarta.annotation:jakarta.annotation-api") api("org.apache.tomcat.embed:tomcat-embed-core") { exclude group: "org.apache.tomcat", module: "tomcat-annotations-api" diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-undertow/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-undertow/build.gradle index 8c1af36c688..5f25ead862f 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-undertow/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-undertow/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Undertow as the embedded servlet container. An alternative to spring-boot-starter-tomcat" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api("io.undertow:undertow-core") api("io.undertow:undertow-servlet") { exclude group: "org.jboss.spec.javax.annotation", module: "jboss-annotations-api_1.2_spec" diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-validation/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-validation/build.gradle index c6c0b395fe6..72b1f9318fe 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-validation/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-validation/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Java Bean Validation with Hibernate Validator" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api("org.glassfish:jakarta.el") api("org.hibernate.validator:hibernate-validator") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-web-services/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-web-services/build.gradle index 66e3caa8f74..c8e2854b60b 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-web-services/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-web-services/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for using Spring Web Services" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) api("com.sun.xml.messaging.saaj:saaj-impl") api("jakarta.xml.ws:jakarta.xml.ws-api") { diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-web/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-web/build.gradle index 898c0da05d5..735883686b8 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-web/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-web/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building web, including RESTful, applications using Spring MVC. Uses Tomcat as the default embedded container" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-json")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-tomcat")) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-webflux/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-webflux/build.gradle index 6a0063b2fad..21b288e4140 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-webflux/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-webflux/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building WebFlux applications using Spring Framework's Reactive Web support" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-json")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-reactor-netty")) diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter-websocket/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter-websocket/build.gradle index c3635b62cad..ff04bb94b65 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter-websocket/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter-websocket/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Starter for building WebSocket applications using Spring Framework's WebSocket support" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) api("org.springframework:spring-messaging") api("org.springframework:spring-websocket") diff --git a/spring-boot-project/spring-boot-starters/spring-boot-starter/build.gradle b/spring-boot-project/spring-boot-starters/spring-boot-starter/build.gradle index bfb980ac724..1e5a6fb6f76 100644 --- a/spring-boot-project/spring-boot-starters/spring-boot-starter/build.gradle +++ b/spring-boot-project/spring-boot-starters/spring-boot-starter/build.gradle @@ -5,7 +5,6 @@ plugins { description = "Core starter, including auto-configuration support, logging and YAML" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot")) api(project(":spring-boot-project:spring-boot-autoconfigure")) api(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-logging")) diff --git a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle index ee729e48d47..d713d496dd7 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-test-autoconfigure/build.gradle @@ -2,19 +2,16 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.optional-dependencies" } description = "Spring Boot Test AutoConfigure" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot")) api(project(":spring-boot-project:spring-boot-test")) api(project(":spring-boot-project:spring-boot-autoconfigure")) - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("javax.json.bind:javax.json.bind-api") optional("javax.servlet:javax.servlet-api") optional("javax.transaction:javax.transaction-api") diff --git a/spring-boot-project/spring-boot-test/build.gradle b/spring-boot-project/spring-boot-test/build.gradle index ee7854f25ca..778abc5a529 100644 --- a/spring-boot-project/spring-boot-test/build.gradle +++ b/spring-boot-project/spring-boot-test/build.gradle @@ -3,17 +3,14 @@ plugins { id "org.jetbrains.kotlin.jvm" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.optional-dependencies" } description = "Spring Boot Test" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api(project(":spring-boot-project:spring-boot")) - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("com.fasterxml.jackson.core:jackson-databind") optional("com.google.code.gson:gson") optional("com.jayway.jsonpath:json-path") diff --git a/spring-boot-project/spring-boot-tools/spring-boot-antlib/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-antlib/build.gradle index 2e15b740274..b57e043d490 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-antlib/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-antlib/build.gradle @@ -2,7 +2,6 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Antlib" @@ -20,8 +19,6 @@ dependencies { antUnit "org.apache.ant:ant-antunit:1.3" antIvy "org.apache.ivy:ivy:2.5.0" - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) - compileOnly(project(":spring-boot-project:spring-boot-tools:spring-boot-loader")) compileOnly("org.apache.ant:ant:${antVersion}") diff --git a/spring-boot-project/spring-boot-tools/spring-boot-buildpack-platform/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-buildpack-platform/build.gradle index 3e1aeda35a7..56a9bc77170 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-buildpack-platform/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-buildpack-platform/build.gradle @@ -2,13 +2,11 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Buildpack Platform" dependencies { - api(platform(project(":spring-boot-project:spring-boot-parent"))) api("com.fasterxml.jackson.core:jackson-databind") api("com.fasterxml.jackson.module:jackson-module-parameter-names") api("net.java.dev.jna:jna-platform") diff --git a/spring-boot-project/spring-boot-tools/spring-boot-configuration-metadata/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-configuration-metadata/build.gradle index 92531fc616a..1ceb415f3b0 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-configuration-metadata/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-configuration-metadata/build.gradle @@ -2,7 +2,6 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Configuration Metadata" diff --git a/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle index d268d229f2c..fc90f32dec7 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle @@ -4,7 +4,6 @@ plugins { id "org.asciidoctor.jvm.convert" id "org.asciidoctor.jvm.pdf" id "org.springframework.boot.conventions" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.maven-repository" id "org.springframework.boot.optional-dependencies" } @@ -12,7 +11,9 @@ plugins { description = "Spring Boot Gradle Plugin" configurations { - asciidoctorExtensions + asciidoctorExtensions { + extendsFrom dependencyManagement + } documentation } @@ -26,19 +27,14 @@ repositories { } dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) - - asciidoctorExtensions(platform(project(":spring-boot-project:spring-boot-parent"))) asciidoctorExtensions("io.spring.asciidoctor:spring-asciidoctor-extensions-block-switch") - implementation(platform(project(":spring-boot-project:spring-boot-parent"))) implementation(project(":spring-boot-project:spring-boot-tools:spring-boot-buildpack-platform")) implementation(project(":spring-boot-project:spring-boot-tools:spring-boot-loader-tools")) implementation("io.spring.gradle:dependency-management-plugin") implementation("org.apache.commons:commons-compress") implementation("org.springframework:spring-core") - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.50") testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) diff --git a/spring-boot-project/spring-boot-tools/spring-boot-jarmode-layertools/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-jarmode-layertools/build.gradle index 03bc7579bd3..b1863cbd7ee 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-jarmode-layertools/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-jarmode-layertools/build.gradle @@ -2,14 +2,11 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Layers Tools" dependencies { - api(platform(project(":spring-boot-project:spring-boot-parent"))) - implementation(project(":spring-boot-project:spring-boot-tools:spring-boot-loader")) implementation("org.springframework:spring-core") @@ -17,4 +14,3 @@ dependencies { testImplementation("org.junit.jupiter:junit-jupiter") testImplementation("org.mockito:mockito-core") } - diff --git a/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/build.gradle index a76da94100d..b48676b56cd 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/build.gradle @@ -2,7 +2,6 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Loader Tools" @@ -10,12 +9,15 @@ description = "Spring Boot Loader Tools" def generatedResources = "${buildDir}/generated-resources/main" configurations { - loader - jarmode + loader { + extendsFrom dependencyManagement + } + jarmode { + extendsFrom dependencyManagement + } } dependencies { - api(platform(project(":spring-boot-project:spring-boot-parent"))) api("org.apache.commons:commons-compress") api("org.springframework:spring-core") diff --git a/spring-boot-project/spring-boot-tools/spring-boot-loader/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-loader/build.gradle index 277621af6d3..fa85d4849ca 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-loader/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-loader/build.gradle @@ -2,14 +2,11 @@ plugins { id "java-library" id "org.springframework.boot.conventions" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Loader" dependencies { - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) - compileOnly("org.springframework:spring-core") testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) diff --git a/spring-boot-project/spring-boot-tools/spring-boot-maven-plugin/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-maven-plugin/build.gradle index 875394c4e88..843dcd010ed 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-maven-plugin/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-maven-plugin/build.gradle @@ -2,7 +2,6 @@ plugins { id "org.asciidoctor.jvm.convert" id "org.asciidoctor.jvm.pdf" id "org.springframework.boot.conventions" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.maven-plugin" id "org.springframework.boot.optional-dependencies" } @@ -14,8 +13,6 @@ configurations { } dependencies { - api(platform(project(":spring-boot-project:spring-boot-parent"))) - compileOnly("org.apache.maven.plugin-tools:maven-plugin-annotations") compileOnly("org.sonatype.plexus:plexus-build-api") @@ -24,7 +21,6 @@ dependencies { implementation("org.apache.maven.shared:maven-common-artifact-filters") implementation("org.apache.maven:maven-plugin-api") - intTestImplementation(platform(project(":spring-boot-project:spring-boot-parent"))) intTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-buildpack-platform")) intTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-loader-tools")) intTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) @@ -33,7 +29,6 @@ dependencies { intTestImplementation("org.junit.jupiter:junit-jupiter") intTestImplementation("org.testcontainers:testcontainers") - optional(platform(project(":spring-boot-project:spring-boot-parent"))) optional("org.apache.maven.plugins:maven-shade-plugin") runtimeOnly("org.sonatype.plexus:plexus-build-api") diff --git a/spring-boot-project/spring-boot-tools/spring-boot-test-support/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-test-support/build.gradle index 7acf2ccbbca..7985225b9bc 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-test-support/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-test-support/build.gradle @@ -1,7 +1,6 @@ plugins { id "java-library" id "org.springframework.boot.conventions" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Testing Support" diff --git a/spring-boot-project/spring-boot/build.gradle b/spring-boot-project/spring-boot/build.gradle index 533a4136c32..7b4f63169e5 100644 --- a/spring-boot-project/spring-boot/build.gradle +++ b/spring-boot-project/spring-boot/build.gradle @@ -4,21 +4,17 @@ plugins { id "org.springframework.boot.conventions" id "org.springframework.boot.configuration-properties" id "org.springframework.boot.deployed" - id "org.springframework.boot.internal-dependency-management" id "org.springframework.boot.optional-dependencies" } description = "Spring Boot" dependencies { - annotationProcessor(platform(project(":spring-boot-project:spring-boot-dependencies"))) annotationProcessor("org.apache.logging.log4j:log4j-core") - api(platform(project(":spring-boot-project:spring-boot-dependencies"))) api("org.springframework:spring-core") api("org.springframework:spring-context") - optional(platform(project(":spring-boot-project:spring-boot-dependencies"))) optional("ch.qos.logback:logback-classic") optional("com.atomikos:transactions-jdbc") optional("com.atomikos:transactions-jms") diff --git a/spring-boot-tests/spring-boot-deployment-tests/build.gradle b/spring-boot-tests/spring-boot-deployment-tests/build.gradle index 98ddc1ce935..10dcb2de418 100644 --- a/spring-boot-tests/spring-boot-deployment-tests/build.gradle +++ b/spring-boot-tests/spring-boot-deployment-tests/build.gradle @@ -6,6 +6,12 @@ plugins { description = "Spring Boot Deployment Tests" +configurations { + providedRuntime { + extendsFrom dependencyManagement + } +} + dependencies { implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) { exclude group: "org.hibernate.validator" diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-ant/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-ant/build.gradle index c474fdb88f5..3efb8cdc8ac 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-ant/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-ant/build.gradle @@ -6,7 +6,9 @@ plugins { description = "Spring Boot Ant smoke test" configurations { - antDependencies + antDependencies { + extendsFrom dependencyManagement + } testRepository } @@ -31,7 +33,6 @@ dependencies { testRepository(project(path: ":spring-boot-project:spring-boot-tools:spring-boot-loader", configuration: "mavenRepository")) testRepository(project(path: ":spring-boot-project:spring-boot-starters:spring-boot-starter", configuration: "mavenRepository")) - testImplementation(platform(project(":spring-boot-project:spring-boot-dependencies"))) testImplementation(project(path: ":spring-boot-project:spring-boot-tools:spring-boot-loader-tools")) testImplementation("org.assertj:assertj-core") testImplementation("org.junit.jupiter:junit-jupiter") diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-atmosphere/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-atmosphere/build.gradle index 27012ea3685..27f86bf5db0 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-atmosphere/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-atmosphere/build.gradle @@ -1,7 +1,6 @@ plugins { id "java" id "org.springframework.boot.conventions" - id "org.springframework.boot.internal-dependency-management" } description = "Spring Boot Atmosphere smoke test" diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle index 0b79b8c87d0..67f7746d97f 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle @@ -6,7 +6,6 @@ plugins { description = "Spring Boot Data R2DBC with Flyway smoke test" dependencies { - implementation(platform(project(":spring-boot-project:spring-boot-parent"))) implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-r2dbc")) runtimeOnly("io.r2dbc:r2dbc-postgresql") diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle index ed91ba28859..ac107b3e457 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle @@ -6,7 +6,6 @@ plugins { description = "Spring Boot Data R2DBC with Liquibase smoke test" dependencies { - implementation(platform(project(":spring-boot-project:spring-boot-parent"))) implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-r2dbc")) runtimeOnly("io.r2dbc:r2dbc-postgresql") diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty-jsp/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty-jsp/build.gradle index 056267d564d..5e16488338c 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty-jsp/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty-jsp/build.gradle @@ -5,6 +5,12 @@ plugins { description = "Spring Boot Jetty JSP smoke test" +configurations { + providedRuntime { + extendsFrom dependencyManagement + } +} + dependencies { compileOnly("jakarta.servlet:jakarta.servlet-api") compileOnly(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-jetty")) @@ -13,7 +19,6 @@ dependencies { exclude module: "spring-boot-starter-tomcat" } - providedRuntime(platform(project(":spring-boot-project:spring-boot-dependencies"))) providedRuntime("org.eclipse.jetty:apache-jsp") { exclude group: "javax.annotation", module: "javax.annotation-api" } diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-testng/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-testng/build.gradle index 4264bb8ba03..14bc6715cdd 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-testng/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-testng/build.gradle @@ -1,11 +1,11 @@ plugins { id "java" -// id "org.springframework.boot.conventions" } description = "Spring Boot TestNG smoke test" dependencies { + implementation(platform(project(":spring-boot-project:spring-boot-dependencies"))) implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-tomcat")) implementation("org.springframework:spring-webmvc") diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-tomcat-jsp/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-tomcat-jsp/build.gradle index 82a09b96a54..edfd6c56f8b 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-tomcat-jsp/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-tomcat-jsp/build.gradle @@ -5,6 +5,12 @@ plugins { description = "Spring Boot Tomcat JSP smoke test" +configurations { + providedRuntime { + extendsFrom dependencyManagement + } +} + dependencies { implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-traditional/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-traditional/build.gradle index 4dd0affd97c..bc16f0a0b81 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-traditional/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-traditional/build.gradle @@ -5,6 +5,12 @@ plugins { description = "Spring Boot traditional deployment smoke test" +configurations { + providedRuntime { + extendsFrom dependencyManagement + } +} + dependencies { implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter")) implementation("org.springframework:spring-webmvc") diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-war/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-war/build.gradle index 3831bb1ea04..6aceb3d640b 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-war/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-war/build.gradle @@ -5,12 +5,17 @@ plugins { description = "Spring Boot war smoke test" +configurations { + providedCompile { + extendsFrom dependencyManagement + } +} + dependencies { implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) { exclude module: "spring-boot-starter-tomcat" } - providedCompile(platform(project(":spring-boot-project:spring-boot-dependencies"))) providedCompile("jakarta.servlet:jakarta.servlet-api") testImplementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-test")) diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-jsp/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-jsp/build.gradle index 30dccefc5a2..6c1baf15885 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-jsp/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-jsp/build.gradle @@ -5,6 +5,12 @@ plugins { description = "Spring Boot web JSP smoke test" +configurations { + providedRuntime { + extendsFrom dependencyManagement + } +} + dependencies { implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web")) diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-static/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-static/build.gradle index 79e35920c6f..67236bd4716 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-static/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-web-static/build.gradle @@ -5,6 +5,12 @@ plugins { description = "Spring Boot web static smoke test" +configurations { + providedRuntime { + extendsFrom dependencyManagement + } +} + dependencies { implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web"))