Author: kenney
Date: Sun Sep 18 18:29:18 2005
New Revision: 290040
URL: http://svn.apache.org/viewcvs?rev=290040&view=rev
Log:
Fixed MNG-908: set the contextClassLoader to the classrealm of the
currently executing plugin, so that both getClass().getClassLoader()
and Thread.currentThread().getContextClassLoader() return the same
classloader (and hence resources).
Modified:
maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
maven/components/trunk/maven-plugin-descriptor/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.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=290040&r1=290039&r2=290040&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
Sun Sep 18 18:29:18 2005
@@ -352,8 +352,13 @@
dispatcher.dispatchStart( event, goalExecId );
+ ClassLoader oldClassLoader =
Thread.currentThread().getContextClassLoader();
+
try
{
+ Thread.currentThread().setContextClassLoader(
+
mojoDescriptor.getPluginDescriptor().getClassRealm().getClassLoader() );
+
plugin.execute();
dispatcher.dispatchEnd( event, goalExecId );
@@ -366,6 +371,9 @@
}
finally
{
+
+ Thread.currentThread().setContextClassLoader( oldClassLoader );
+
try
{
PlexusContainer pluginContainer = getPluginContainer(
mojoDescriptor.getPluginDescriptor() );
Modified:
maven/components/trunk/maven-plugin-descriptor/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugin-descriptor/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java?rev=290040&r1=290039&r2=290040&view=diff
==============================================================================
---
maven/components/trunk/maven-plugin-descriptor/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java
(original)
+++
maven/components/trunk/maven-plugin-descriptor/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java
Sun Sep 18 18:29:18 2005
@@ -302,4 +302,10 @@
{
this.classRealm = classRealm;
}
+
+ public ClassRealm getClassRealm()
+ {
+ return classRealm;
+ }
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]