mirror of
https://github.com/spring-projects/spring-boot.git
synced 2026-10-01 14:59:50 +00:00
Upgrade to Maven 3.10.0
Closes gh-51911
This commit is contained in:
@@ -53,6 +53,7 @@ dependencies {
|
||||
optional("org.cyclonedx:cyclonedx-gradle-plugin") {
|
||||
exclude(group: "javax.annotation", module: "javax.annotation-api")
|
||||
exclude(group: "javax.inject", module: "javax.inject")
|
||||
exclude(group: "org.slf4j", module: "jcl-over-slf4j")
|
||||
}
|
||||
optional("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion")
|
||||
|
||||
|
||||
@@ -67,6 +67,7 @@ dependencies {
|
||||
testImplementation("org.apache.maven:maven-core") {
|
||||
exclude(group: "javax.annotation", module: "javax.annotation-api")
|
||||
exclude(group: "javax.inject", module: "javax.inject")
|
||||
exclude(group: "org.slf4j", module: "jcl-over-slf4j")
|
||||
}
|
||||
testImplementation("org.apache.maven.shared:maven-common-artifact-filters") {
|
||||
exclude(group: "javax.annotation", module: "javax.annotation-api")
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ jacksonVersion=3.1.5
|
||||
javaFormatVersion=0.0.48
|
||||
junitJupiterVersion=6.0.3
|
||||
kotlinVersion=2.2.21
|
||||
mavenVersion=3.9.13
|
||||
mavenVersion=3.10.0
|
||||
mockitoVersion=5.20.0
|
||||
nativeBuildToolsVersion=0.11.5
|
||||
nullabilityPluginVersion=0.0.15
|
||||
|
||||
@@ -162,16 +162,16 @@ bom {
|
||||
]
|
||||
}
|
||||
}
|
||||
library("Maven Resolver", "1.9.27") {
|
||||
library("Maven Resolver", "2.0.24") {
|
||||
group("org.apache.maven.resolver") {
|
||||
modules = [
|
||||
"maven-resolver-api",
|
||||
"maven-resolver-connector-basic",
|
||||
"maven-resolver-impl",
|
||||
"maven-resolver-spi",
|
||||
"maven-resolver-supplier",
|
||||
"maven-resolver-supplier-mvn3",
|
||||
"maven-resolver-transport-apache",
|
||||
"maven-resolver-transport-file",
|
||||
"maven-resolver-transport-http",
|
||||
"maven-resolver-util"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ dependencies {
|
||||
compileOnly("org.springframework.data:spring-data-redis")
|
||||
|
||||
implementation("jakarta.inject:jakarta.inject-api")
|
||||
implementation("org.apache.maven.resolver:maven-resolver-supplier") {
|
||||
implementation("org.apache.maven.resolver:maven-resolver-supplier-mvn3") {
|
||||
exclude group: "org.slf4j", module: "jcl-over-slf4j"
|
||||
}
|
||||
|
||||
|
||||
+23
-20
@@ -24,6 +24,7 @@ import java.net.URI;
|
||||
import java.net.URISyntaxException;
|
||||
import java.net.URL;
|
||||
import java.net.URLClassLoader;
|
||||
import java.nio.file.Path;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
@@ -38,18 +39,17 @@ import java.util.jar.JarFile;
|
||||
import java.util.regex.Pattern;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import org.apache.maven.repository.internal.MavenRepositorySystemUtils;
|
||||
import org.eclipse.aether.DefaultRepositorySystemSession;
|
||||
import org.eclipse.aether.RepositorySystem;
|
||||
import org.eclipse.aether.RepositorySystemSession.CloseableSession;
|
||||
import org.eclipse.aether.artifact.DefaultArtifact;
|
||||
import org.eclipse.aether.collection.CollectRequest;
|
||||
import org.eclipse.aether.graph.Dependency;
|
||||
import org.eclipse.aether.repository.LocalRepository;
|
||||
import org.eclipse.aether.repository.RemoteRepository;
|
||||
import org.eclipse.aether.resolution.ArtifactResult;
|
||||
import org.eclipse.aether.resolution.DependencyRequest;
|
||||
import org.eclipse.aether.resolution.DependencyResult;
|
||||
import org.eclipse.aether.supplier.RepositorySystemSupplier;
|
||||
import org.eclipse.aether.supplier.SessionBuilderSupplier;
|
||||
|
||||
import org.springframework.core.annotation.MergedAnnotation;
|
||||
import org.springframework.core.annotation.MergedAnnotations;
|
||||
@@ -64,6 +64,7 @@ import org.springframework.util.StringUtils;
|
||||
*
|
||||
* @author Andy Wilkinson
|
||||
* @author Christoph Dreis
|
||||
* @author Moritz Halbritter
|
||||
*/
|
||||
final class ModifiedClassPathClassLoader extends URLClassLoader {
|
||||
|
||||
@@ -241,27 +242,29 @@ final class ModifiedClassPathClassLoader extends URLClassLoader {
|
||||
private static List<URL> resolveCoordinates(String[] coordinates) {
|
||||
return doWithRepositorySystem((repositorySystem) -> {
|
||||
Exception latestFailure = null;
|
||||
DefaultRepositorySystemSession session = MavenRepositorySystemUtils.newSession();
|
||||
session.setSystemProperties(System.getProperties());
|
||||
LocalRepository localRepository = new LocalRepository(System.getProperty("user.home") + "/.m2/repository");
|
||||
Path localRepository = Path.of(System.getProperty("user.home"), ".m2", "repository");
|
||||
RemoteRepository remoteRepository = new RemoteRepository.Builder("central", "default",
|
||||
"https://repo.maven.apache.org/maven2")
|
||||
.build();
|
||||
session.setLocalRepositoryManager(repositorySystem.newLocalRepositoryManager(session, localRepository));
|
||||
for (int i = 0; i < MAX_RESOLUTION_ATTEMPTS; i++) {
|
||||
CollectRequest collectRequest = new CollectRequest(null, Arrays.asList(remoteRepository));
|
||||
collectRequest.setDependencies(createDependencies(coordinates));
|
||||
DependencyRequest dependencyRequest = new DependencyRequest(collectRequest, null);
|
||||
try {
|
||||
DependencyResult result = repositorySystem.resolveDependencies(session, dependencyRequest);
|
||||
List<URL> resolvedArtifacts = new ArrayList<>();
|
||||
for (ArtifactResult artifact : result.getArtifactResults()) {
|
||||
resolvedArtifacts.add(artifact.getArtifact().getFile().toURI().toURL());
|
||||
try (CloseableSession session = new SessionBuilderSupplier(repositorySystem).get()
|
||||
.setSystemProperties(System.getProperties())
|
||||
.withLocalRepositoryBaseDirectories(localRepository)
|
||||
.build()) {
|
||||
for (int i = 0; i < MAX_RESOLUTION_ATTEMPTS; i++) {
|
||||
CollectRequest collectRequest = new CollectRequest(null, Arrays.asList(remoteRepository));
|
||||
collectRequest.setDependencies(createDependencies(coordinates));
|
||||
DependencyRequest dependencyRequest = new DependencyRequest(collectRequest, null);
|
||||
try {
|
||||
DependencyResult result = repositorySystem.resolveDependencies(session, dependencyRequest);
|
||||
List<URL> resolvedArtifacts = new ArrayList<>();
|
||||
for (ArtifactResult artifact : result.getArtifactResults()) {
|
||||
resolvedArtifacts.add(artifact.getArtifact().getPath().toUri().toURL());
|
||||
}
|
||||
return resolvedArtifacts;
|
||||
}
|
||||
catch (Exception ex) {
|
||||
latestFailure = ex;
|
||||
}
|
||||
return resolvedArtifacts;
|
||||
}
|
||||
catch (Exception ex) {
|
||||
latestFailure = ex;
|
||||
}
|
||||
}
|
||||
throw new IllegalStateException("Resolution failed after " + MAX_RESOLUTION_ATTEMPTS + " attempts",
|
||||
|
||||
Reference in New Issue
Block a user