Author: kenney Date: Thu Jan 18 10:49:58 2007 New Revision: 497533 URL: http://svn.apache.org/viewvc?view=rev&rev=497533 Log: Fix resolving <plugin><dependencies>: it0081
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?view=diff&rev=497533&r1=497532&r2=497533 ============================================================================== --- maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java (original) +++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java Thu Jan 18 10:49:58 2007 @@ -310,24 +310,23 @@ // Now here we need the artifact coreArtifactFilter stuff - componentRealm = container.createComponentRealm( plugin.getKey(), jars ); - + componentRealm = container.createComponentRealm( projectPlugin.getKey(), jars ); } catch ( PlexusContainerException e ) { - throw new PluginManagerException( "Failed to create realm for plugin '" + plugin + ".", e ); + throw new PluginManagerException( "Failed to create realm for plugin '" + projectPlugin + ".", e ); } // ---------------------------------------------------------------------------- // The PluginCollector will now know about the plugin we are trying to load // ---------------------------------------------------------------------------- - PluginDescriptor pluginDescriptor = pluginCollector.getPluginDescriptor( plugin ); + PluginDescriptor pluginDescriptor = pluginCollector.getPluginDescriptor( projectPlugin ); if ( pluginDescriptor == null ) { throw new IllegalStateException( - "The PluginDescriptor for the plugin " + plugin.getKey() + " was not found" ); + "The PluginDescriptor for the plugin " + projectPlugin.getKey() + " was not found" ); } pluginDescriptor.setPluginArtifact( pluginArtifact ); @@ -348,14 +347,14 @@ Plugin plugin, MavenProject project, MavenSession session ) - throws InvalidPluginException, ArtifactNotFoundException, PluginManagerException, ArtifactResolutionException + throws InvalidPluginException, ArtifactNotFoundException, ArtifactResolutionException { - Set artifacts; + Set projectPluginDependencies; try { - artifacts = MavenMetadataSource.createArtifacts( artifactFactory, plugin.getDependencies(), null, + projectPluginDependencies = MavenMetadataSource.createArtifacts( artifactFactory, plugin.getDependencies(), null, coreArtifactFilter, project ); } catch ( InvalidDependencyVersionException e ) @@ -392,6 +391,14 @@ artifactFilter ); Set resolved = result.getArtifacts(); + + // Also resolve the plugin dependencies specified in <plugin><dependencies>: + resolved.addAll( artifactResolver.resolveTransitively( projectPluginDependencies, + pluginArtifact, + localRepository, + repositories, + artifactMetadataSource, + artifactFilter ).getArtifacts() ); for ( Iterator it = resolved.iterator(); it.hasNext(); ) {