From 894e0e11d43fc73b7c09e18a28e235a19fa588d1 Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Tue, 11 Sep 2018 16:49:06 -0700 Subject: [PATCH] Switch from Aether to Maven Resolver Replace Aether dependencies with Maven Resolver following the Eclipse EOL announcement for Aether. Closes gh-7627 --- spring-boot-project/spring-boot-cli/pom.xml | 136 ++++++++++-------- ...DependencyManagementBomTransformation.java | 21 +++ .../spring-boot-parent/pom.xml | 89 ++++++------ .../spring-boot-test-support/pom.xml | 34 ++--- 4 files changed, 153 insertions(+), 127 deletions(-) diff --git a/spring-boot-project/spring-boot-cli/pom.xml b/spring-boot-project/spring-boot-cli/pom.xml index d5c63cd14f1..37b67de351e 100644 --- a/spring-boot-project/spring-boot-cli/pom.xml +++ b/spring-boot-project/spring-boot-cli/pom.xml @@ -1,5 +1,6 @@ - 4.0.0 @@ -39,6 +40,20 @@ org.codehaus.groovy groovy + + org.sonatype.plexus + plexus-sec-dispatcher + + + org.sonatype.sisu + sisu-inject-plexus + + + org.sonatype.sisu + sisu-inject-bean + + + org.springframework spring-core @@ -47,53 +62,43 @@ org.springframework.security spring-security-crypto + + org.apache.httpcomponents + httpclient + org.apache.maven - maven-aether-provider - - - org.eclipse.sisu.plexus - org.eclipse.sisu - - + maven-model org.apache.maven maven-settings-builder - org.codehaus.plexus - plexus-component-api + org.apache.maven + maven-resolver-provider - * - * + com.google.guava + guava - org.eclipse.aether - aether-api + org.apache.maven.resolver + maven-resolver-connector-basic - org.eclipse.aether - aether-connector-basic + org.apache.maven.resolver + maven-resolver-impl - org.eclipse.aether - aether-impl + org.apache.maven.resolver + maven-resolver-transport-file - org.eclipse.aether - aether-spi - - - org.eclipse.aether - aether-transport-file - - - org.eclipse.aether - aether-transport-http + org.apache.maven.resolver + maven-resolver-transport-http jcl-over-slf4j @@ -101,10 +106,6 @@ - - org.eclipse.aether - aether-util - org.springframework.boot @@ -308,17 +309,23 @@ false - - + + - - - - + + + + @@ -328,12 +335,14 @@ + tofile="${project.build.directory}/homebrew/springboot.rb" + overwrite="true"> - @@ -347,20 +356,27 @@ false - - + + - + - - - - + + + + @@ -370,7 +386,8 @@ + tofile="${project.build.directory}/scoop/springboot.json" + overwrite="true"> @@ -382,8 +399,9 @@ - + diff --git a/spring-boot-project/spring-boot-cli/src/main/java/org/springframework/boot/cli/compiler/DependencyManagementBomTransformation.java b/spring-boot-project/spring-boot-cli/src/main/java/org/springframework/boot/cli/compiler/DependencyManagementBomTransformation.java index 848478ded3d..5aca2953fcf 100644 --- a/spring-boot-project/spring-boot-cli/src/main/java/org/springframework/boot/cli/compiler/DependencyManagementBomTransformation.java +++ b/spring-boot-project/spring-boot-cli/src/main/java/org/springframework/boot/cli/compiler/DependencyManagementBomTransformation.java @@ -28,7 +28,9 @@ import java.util.Map; import java.util.Set; import groovy.grape.Grape; +import org.apache.maven.model.Dependency; import org.apache.maven.model.Model; +import org.apache.maven.model.Parent; import org.apache.maven.model.Repository; import org.apache.maven.model.building.DefaultModelBuilder; import org.apache.maven.model.building.DefaultModelBuilderFactory; @@ -61,6 +63,7 @@ import org.springframework.core.annotation.Order; * @since 1.3.0 */ @Order(DependencyManagementBomTransformation.ORDER) +@SuppressWarnings("deprecation") public class DependencyManagementBomTransformation extends AnnotatedNodeASTTransformation { @@ -210,6 +213,19 @@ public class DependencyManagementBomTransformation private static class GrapeModelResolver implements ModelResolver { + @Override + public ModelSource resolveModel(Parent parent) throws UnresolvableModelException { + return resolveModel(parent.getGroupId(), parent.getArtifactId(), + parent.getVersion()); + } + + @Override + public ModelSource resolveModel(Dependency dependency) + throws UnresolvableModelException { + return resolveModel(dependency.getGroupId(), dependency.getArtifactId(), + dependency.getVersion()); + } + @Override public ModelSource resolveModel(String groupId, String artifactId, String version) throws UnresolvableModelException { @@ -233,6 +249,11 @@ public class DependencyManagementBomTransformation throws InvalidRepositoryException { } + @Override + public void addRepository(Repository repository, boolean replace) + throws InvalidRepositoryException { + } + @Override public ModelResolver newCopy() { return this; diff --git a/spring-boot-project/spring-boot-parent/pom.xml b/spring-boot-project/spring-boot-parent/pom.xml index 3731acabd6f..d9fb115c80b 100644 --- a/spring-boot-project/spring-boot-parent/pom.xml +++ b/spring-boot-project/spring-boot-parent/pom.xml @@ -23,8 +23,8 @@ 1.8 UTF-8 UTF-8 - 1.0.2.v20150114 - 3.1.1 + 3.5.4 + 1.1.1 1.0-groovy-2.4 @@ -78,6 +78,16 @@ + + org.sonatype.plexus + plexus-sec-dispatcher + 1.4 + + + org.sonatype.sisu + sisu-inject-plexus + 1.4.2 + com.squareup.okhttp okhttp @@ -128,11 +138,6 @@ ivy 2.3.0 - - org.apache.maven - maven-aether-provider - 3.2.1 - org.apache.maven maven-archiver @@ -168,6 +173,36 @@ maven-settings-builder ${maven.version} + + org.apache.maven + maven-model-builder + ${maven.version} + + + org.apache.maven + maven-resolver-provider + ${maven.version} + + + org.apache.maven.resolver + maven-resolver-connector-basic + ${maven-resolver.version} + + + org.apache.maven.resolver + maven-resolver-transport-file + ${maven-resolver.version} + + + org.apache.maven.resolver + maven-resolver-transport-http + ${maven-resolver.version} + + + org.apache.maven.resolver + maven-resolver-impl + ${maven-resolver.version} + org.apache.maven.shared maven-common-artifact-filters @@ -188,51 +223,11 @@ plexus-archiver 3.6.0 - - org.codehaus.plexus - plexus-component-api - 1.0-alpha-33 - org.codehaus.plexus plexus-utils 3.1.0 - - org.eclipse.aether - aether-api - ${aether.version} - - - org.eclipse.aether - aether-connector-basic - ${aether.version} - - - org.eclipse.aether - aether-impl - ${aether.version} - - - org.eclipse.aether - aether-spi - ${aether.version} - - - org.eclipse.aether - aether-transport-file - ${aether.version} - - - org.eclipse.aether - aether-transport-http - ${aether.version} - - - org.eclipse.aether - aether-util - ${aether.version} - org.sonatype.plexus plexus-build-api diff --git a/spring-boot-project/spring-boot-tools/spring-boot-test-support/pom.xml b/spring-boot-project/spring-boot-tools/spring-boot-test-support/pom.xml index d8140318c12..150dab46f34 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-test-support/pom.xml +++ b/spring-boot-project/spring-boot-tools/spring-boot-test-support/pom.xml @@ -26,35 +26,27 @@ + + org.apache.maven.resolver + maven-resolver-connector-basic + + + org.apache.maven.resolver + maven-resolver-impl + org.apache.maven - maven-aether-provider + maven-resolver-provider - org.eclipse.sisu.plexus - org.eclipse.sisu + com.google.guava + guava - org.eclipse.aether - aether-api - - - org.eclipse.aether - aether-connector-basic - - - org.eclipse.aether - aether-impl - - - org.eclipse.aether - aether-spi - - - org.eclipse.aether - aether-transport-http + org.apache.maven.resolver + maven-resolver-transport-http jcl-over-slf4j