Interface PluginDependenciesResolver

  • All Known Implementing Classes:
    DefaultPluginDependenciesResolver

    public interface PluginDependenciesResolver
    Assists in resolving the dependencies of a plugin. Warning: This is an internal utility interface that is only public for technical reasons, it is not part of the public API. In particular, this interface can be changed or deleted without prior notice.
    Since:
    3.0
    Author:
    Benjamin Bentmann
    • Method Summary

      All Methods Instance Methods Abstract Methods Deprecated Methods 
      Modifier and Type Method Description
      org.eclipse.aether.artifact.Artifact resolve​(org.apache.maven.model.Plugin plugin, java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories, org.eclipse.aether.RepositorySystemSession session)
      Resolves the main artifact of the specified plugin.
      org.eclipse.aether.graph.DependencyNode resolve​(org.apache.maven.model.Plugin plugin, org.eclipse.aether.artifact.Artifact pluginArtifact, org.eclipse.aether.graph.DependencyFilter dependencyFilter, java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories, org.eclipse.aether.RepositorySystemSession session)
      Deprecated.
      This method should be avoided, as it requires manual flattening; use resolvePluginAndFlatten(Plugin, Artifact, DependencyFilter, List, RepositorySystemSession) instead to let Resolver handle it.
      org.eclipse.aether.resolution.DependencyResult resolveCoreExtensionAndFlatten​(org.apache.maven.model.Plugin plugin, org.eclipse.aether.graph.DependencyFilter dependencyFilter, java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories, org.eclipse.aether.RepositorySystemSession session)
      Resolves the runtime dependencies of the specified core extension (as Plugin as GAV carrier).
      org.eclipse.aether.resolution.DependencyResult resolvePluginAndFlatten​(org.apache.maven.model.Plugin plugin, org.eclipse.aether.artifact.Artifact pluginArtifact, org.eclipse.aether.graph.DependencyFilter dependencyFilter, java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories, org.eclipse.aether.RepositorySystemSession session)
      Resolves the runtime dependencies of the specified plugin.
    • Method Detail

      • resolve

        org.eclipse.aether.artifact.Artifact resolve​(org.apache.maven.model.Plugin plugin,
                                                     java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories,
                                                     org.eclipse.aether.RepositorySystemSession session)
                                              throws PluginResolutionException
        Resolves the main artifact of the specified plugin.
        Parameters:
        plugin - The plugin for which to resolve the main artifact, must not be null.
        repositories - The plugin repositories to use for resolving the plugin's main artifact, must not be null.
        session - The repository session to use for resolving the plugin's main artifact, must not be null.
        Returns:
        The resolved plugin artifact, never null.
        Throws:
        PluginResolutionException - If the plugin artifact could not be resolved.
      • resolve

        @Deprecated
        org.eclipse.aether.graph.DependencyNode resolve​(org.apache.maven.model.Plugin plugin,
                                                        org.eclipse.aether.artifact.Artifact pluginArtifact,
                                                        org.eclipse.aether.graph.DependencyFilter dependencyFilter,
                                                        java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories,
                                                        org.eclipse.aether.RepositorySystemSession session)
                                                 throws PluginResolutionException
        Deprecated.
        This method should be avoided, as it requires manual flattening; use resolvePluginAndFlatten(Plugin, Artifact, DependencyFilter, List, RepositorySystemSession) instead to let Resolver handle it.
        Resolves the runtime dependencies of the specified plugin.
        Parameters:
        plugin - The plugin for which to resolve the dependencies, must not be null.
        pluginArtifact - The plugin's main artifact, may be null.
        dependencyFilter - A filter to exclude artifacts from resolution (but not collection), may be null.
        repositories - The plugin repositories to use for resolving the plugin artifacts, must not be null.
        session - The repository session to use for resolving the plugin artifacts, must not be null.
        Returns:
        The dependency tree denoting the resolved plugin class path, never null.
        Throws:
        PluginResolutionException - If any dependency could not be resolved.
      • resolveCoreExtensionAndFlatten

        org.eclipse.aether.resolution.DependencyResult resolveCoreExtensionAndFlatten​(org.apache.maven.model.Plugin plugin,
                                                                                      org.eclipse.aether.graph.DependencyFilter dependencyFilter,
                                                                                      java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories,
                                                                                      org.eclipse.aether.RepositorySystemSession session)
                                                                               throws PluginResolutionException
        Resolves the runtime dependencies of the specified core extension (as Plugin as GAV carrier).
        Parameters:
        plugin - The plugin for which to resolve the dependencies, must not be null.
        dependencyFilter - A filter to exclude artifacts from resolution (but not collection), may be null.
        repositories - The plugin repositories to use for resolving the plugin artifacts, must not be null.
        session - The repository session to use for resolving the plugin artifacts, must not be null.
        Returns:
        The dependency resolution result having the resolved extension class path but also the tree, never null.
        Throws:
        PluginResolutionException - If any dependency could not be resolved.
        Since:
        3.10.0
      • resolvePluginAndFlatten

        org.eclipse.aether.resolution.DependencyResult resolvePluginAndFlatten​(org.apache.maven.model.Plugin plugin,
                                                                               org.eclipse.aether.artifact.Artifact pluginArtifact,
                                                                               org.eclipse.aether.graph.DependencyFilter dependencyFilter,
                                                                               java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories,
                                                                               org.eclipse.aether.RepositorySystemSession session)
                                                                        throws PluginResolutionException
        Resolves the runtime dependencies of the specified plugin.
        Parameters:
        plugin - The plugin for which to resolve the dependencies, must not be null.
        pluginArtifact - The plugin's main artifact, may be null.
        dependencyFilter - A filter to exclude artifacts from resolution (but not collection), may be null.
        repositories - The plugin repositories to use for resolving the plugin artifacts, must not be null.
        session - The repository session to use for resolving the plugin artifacts, must not be null.
        Returns:
        The dependency resolution result having the resolved plugin class path but also the tree, never null.
        Throws:
        PluginResolutionException - If any dependency could not be resolved.
        Since:
        3.10.0