Author: jdcasey Date: Sat Dec 10 16:39:20 2005 New Revision: 355831 URL: http://svn.apache.org/viewcvs?rev=355831&view=rev Log: Fixing the context classloader for plugin executions. New classloader will delegate to the realm, rather than using only the loader used by the realm of the plugin-container.
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/viewcvs/maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?rev=355831&r1=355830&r2=355831&view=diff ============================================================================== --- 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 Sat Dec 10 16:39:20 2005 @@ -72,6 +72,7 @@ import org.codehaus.plexus.logging.AbstractLogEnabled; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; +import org.codehaus.plexus.util.RealmDelegatingClassLoader; import org.codehaus.plexus.util.StringUtils; import org.codehaus.plexus.util.xml.Xpp3Dom; @@ -407,7 +408,7 @@ try { Thread.currentThread().setContextClassLoader( - mojoDescriptor.getPluginDescriptor().getClassRealm().getClassLoader() ); + new RealmDelegatingClassLoader( mojoDescriptor.getPluginDescriptor().getClassRealm() ) ); plugin.execute(); @@ -603,16 +604,15 @@ } Set dependencies = new HashSet( resolutionGroup.getArtifacts() ); - dependencies.addAll( pluginDescriptor.getIntroducedDependencyArtifacts() ); - + ArtifactResolutionResult result = artifactResolver.resolveTransitively( dependencies, pluginArtifact, localRepository, resolutionGroup.getResolutionRepositories(), artifactMetadataSource, artifactFilter ); - Set resolved = result.getArtifacts(); + Set resolved = result.getArtifacts(); for ( Iterator it = resolved.iterator(); it.hasNext(); ) {