You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by if...@apache.org on 2017/04/14 17:43:16 UTC
[1/2] maven git commit: MNG-6209 better executeMojo thread context
classloader
Repository: maven
Updated Branches:
refs/heads/master 567af0d96 -> c2c6259de
MNG-6209 better executeMojo thread context classloader
Signed-off-by: Igor Fedorenko <if...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/ec629f7d
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/ec629f7d
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/ec629f7d
Branch: refs/heads/master
Commit: ec629f7d511eb910b4e80112a9fbe85ed8786f10
Parents: 567af0d
Author: Igor Fedorenko <if...@apache.org>
Authored: Tue Apr 11 07:59:34 2017 -0700
Committer: Igor Fedorenko <if...@apache.org>
Committed: Thu Apr 13 14:12:23 2017 -0700
----------------------------------------------------------------------
.../java/org/apache/maven/plugin/DefaultBuildPluginManager.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven/blob/ec629f7d/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
index b4f7a4d..3af1125 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
@@ -106,8 +106,11 @@ public class DefaultBuildPluginManager
throw new PluginExecutionException( mojoExecution, project, e );
}
+ // use project realm as thread context classloader to enable components from all extensions=true plugins
+ ClassRealm tccl = mojoExecution.getPlugin().isExtensions() ? project.getClassRealm() : pluginRealm;
+
ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader();
- Thread.currentThread().setContextClassLoader( pluginRealm );
+ Thread.currentThread().setContextClassLoader( tccl );
MavenSession oldSession = legacySupport.getSession();
[2/2] maven git commit: MNG-6210 allow maven custom guice scopes in
.mvn/extensions
Posted by if...@apache.org.
MNG-6210 allow maven custom guice scopes in .mvn/extensions
Signed-off-by: Igor Fedorenko <if...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/c2c6259d
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/c2c6259d
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/c2c6259d
Branch: refs/heads/master
Commit: c2c6259de6f1262d9b31509b8c30844a386a4f29
Parents: ec629f7
Author: Igor Fedorenko <if...@apache.org>
Authored: Thu Apr 13 12:58:29 2017 -0700
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Apr 14 10:38:45 2017 -0700
----------------------------------------------------------------------
.../src/main/java/org/apache/maven/cli/MavenCli.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven/blob/c2c6259d/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index 877b88b..79ab45d 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -56,6 +56,7 @@ import org.apache.maven.execution.MavenExecutionRequest;
import org.apache.maven.execution.MavenExecutionRequestPopulationException;
import org.apache.maven.execution.MavenExecutionRequestPopulator;
import org.apache.maven.execution.MavenExecutionResult;
+import org.apache.maven.execution.scope.internal.MojoExecutionScopeModule;
import org.apache.maven.extension.internal.CoreExports;
import org.apache.maven.extension.internal.CoreExtensionEntry;
import org.apache.maven.lifecycle.LifecycleExecutionException;
@@ -63,6 +64,7 @@ import org.apache.maven.model.building.ModelProcessor;
import org.apache.maven.project.MavenProject;
import org.apache.maven.properties.internal.EnvironmentUtils;
import org.apache.maven.properties.internal.SystemProperties;
+import org.apache.maven.session.scope.internal.SessionScopeModule;
import org.apache.maven.shared.utils.logging.MessageBuilder;
import org.apache.maven.shared.utils.logging.MessageUtils;
import org.apache.maven.toolchain.building.DefaultToolchainsBuildingRequest;
@@ -684,20 +686,20 @@ public class MavenCli
// NOTE: To avoid inconsistencies, we'll use the TCCL exclusively for lookups
container.setLookupRealm( null );
+ Thread.currentThread().setContextClassLoader( container.getContainerRealm() );
container.setLoggerManager( plexusLoggerManager );
for ( CoreExtensionEntry extension : extensions )
{
- container.discoverComponents( extension.getClassRealm() );
+ container.discoverComponents( extension.getClassRealm(), new SessionScopeModule( container ),
+ new MojoExecutionScopeModule( container ) );
}
customizeContainer( container );
container.getLoggerManager().setThresholds( cliRequest.request.getLoggingLevel() );
- Thread.currentThread().setContextClassLoader( container.getContainerRealm() );
-
eventSpyDispatcher = container.lookup( EventSpyDispatcher.class );
DefaultEventSpyContext eventSpyContext = new DefaultEventSpyContext();