diff --git a/maven-core/src/main/java/org/apache/maven/internal/aether/ResolverLifecycle.java b/maven-core/src/main/java/org/apache/maven/internal/aether/ResolverLifecycle.java index 8c3d99779f2d..32962539a9b2 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/aether/ResolverLifecycle.java +++ b/maven-core/src/main/java/org/apache/maven/internal/aether/ResolverLifecycle.java @@ -24,17 +24,19 @@ import javax.inject.Inject; import javax.inject.Named; import javax.inject.Provider; +import org.apache.maven.AbstractMavenLifecycleParticipant; +import org.apache.maven.execution.MavenSession; import org.eclipse.aether.RepositorySystem; import org.eclipse.sisu.EagerSingleton; /** - * Maven internal component that bridges container "shut down" to {@link RepositorySystem#shutdown()}. + * Maven internal component that bridges container "shut down" and "on session end" to {@link RepositorySystem). * * @since 3.9.0 */ @Named @EagerSingleton -public final class ResolverLifecycle { +public final class ResolverLifecycle extends AbstractMavenLifecycleParticipant { private final Provider repositorySystemProvider; @Inject @@ -42,6 +44,16 @@ public ResolverLifecycle(Provider repositorySystemProvider) { this.repositorySystemProvider = requireNonNull(repositorySystemProvider); } + @Override + public void afterSessionStart(MavenSession session) { + repositorySystemProvider.get().sessionStarted(session.getRepositorySession()); + } + + @Override + public void afterSessionEnd(MavenSession session) { + repositorySystemProvider.get().sessionEnded(session.getRepositorySession()); + } + @PreDestroy public void shutdown() { repositorySystemProvider.get().shutdown(); diff --git a/pom.xml b/pom.xml index 0b801f815eed..60b058dadfdc 100644 --- a/pom.xml +++ b/pom.xml @@ -142,7 +142,7 @@ under the License. 2.0 2.0 1.3 - 1.9.2 + 1.9.3-SNAPSHOT 1.7.36 2.2.1 1.7.4