title: Using Gradle 5.1 "implementation platform" instead of Spring Dependency Management Plugin
body: <p>I have written a Gradle Plugin that contains a bunch of common setup configuration so that all of our projects just need to apply that plugin and a set of dependencies. It uses the Spring Dependency Management Plugin to setup the BOM imports for Spring as shown in the code snippet below:</p>
  
  <pre><code>trait ConfigureDependencyManagement {
      void configureDependencyManagement(final Project project) {
          assert project != null
  
          project.apply(plugin: "io.spring.dependency-management")
  
          final DependencyManagementExtension dependencyManagementExtension = project.extensions.findByType(DependencyManagementExtension)
          dependencyManagementExtension.imports {                 
              mavenBom "org.springframework.boot:spring-boot-dependencies:2.1.0.RELEASE"
          }
       }
    }
  </code></pre>
  
  <p>Whilst that still works in Gradle 5.1 I wanted to replace the Spring Dependency Management Plugin with the new dependency mechanism for BOM Imports so I updated the above to now be this:</p>
  
  <pre><code>trait ConfigureDependencyManagement {
      void configureDependencyManagement(final Project project) {
          assert project != null
  
          project.dependencies.platform("org.springframework.boot:spring-boot-dependencies:2.1.0.RELEASE")
      }
  }
  </code></pre>
  
  <p>Unfortunately that change means none of the dependencies defined by these BOMs are being imported and I get errors like these when building projects?</p>
  
  <blockquote>
    <p>Could not find org.springframework.boot:spring-boot-starter-web:.
         Required by:
             project :</p>
    
    <p>Could not find org.springframework.boot:spring-boot-starter-data-jpa:.
         Required by:
             project :</p>
    
    <p>Could not find org.springframework.boot:spring-boot-starter-security:.
         Required by:
             project :</p>
  </blockquote>
  
  <p>Am I correct in thinking the Spring Dependency Management Plugin is no longer needed with Gradle 5.1 and if so then am I missing something for this to work?</p>