public class PluginDependencyResolver extends Object
install lifecycle, together
with their transitive dependencies, using Maven's Aether repository system. Both the plugin
artifacts themselves and their transitive closure are reported.
Both explicitly-declared POM plugins and lifecycle-default bindings (e.g. the
maven-compiler-plugin bound to compile by default for jar packaging)
are included. This mirrors what mvn dependency:resolve-plugins reports.
The resolver is intentionally non-fatal: any plugin or artifact that cannot be resolved is logged and skipped, so the regular dependency tree is never broken.
| Constructor and Description |
|---|
PluginDependencyResolver(org.eclipse.aether.RepositorySystem repositorySystem,
org.apache.maven.lifecycle.LifecycleExecutor lifecycleExecutor,
org.apache.maven.execution.MavenSession session,
org.apache.maven.project.MavenProject project,
org.apache.maven.plugin.logging.Log log) |
| Modifier and Type | Method and Description |
|---|---|
Map<String,MavenDependencyNode> |
resolvePluginDependencies()
Returns a map of
"groupId:artifactId:version" -> MavenDependencyNode for every build
plugin that participates in the install lifecycle and each of its transitive dependencies
(the plugin artifacts themselves are included alongside their closure). |
public PluginDependencyResolver(org.eclipse.aether.RepositorySystem repositorySystem,
org.apache.maven.lifecycle.LifecycleExecutor lifecycleExecutor,
org.apache.maven.execution.MavenSession session,
org.apache.maven.project.MavenProject project,
org.apache.maven.plugin.logging.Log log)
public Map<String,MavenDependencyNode> resolvePluginDependencies()
"groupId:artifactId:version" -> MavenDependencyNode for every build
plugin that participates in the install lifecycle and each of its transitive dependencies
(the plugin artifacts themselves are included alongside their closure).
Both explicitly-declared plugins (from project.getBuildPlugins()) and
lifecycle-default bindings are included, deduped by GAV.
Copyright © 2026 JFrog. All rights reserved.