You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/12/07 23:55:08 UTC
svn commit: r1211692 -
/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
Author: olamy
Date: Wed Dec 7 22:55:08 2011
New Revision: 1211692
URL: http://svn.apache.org/viewvc?rev=1211692&view=rev
Log:
[MNG-5206] plexus container never disposed
Submitted by Stuart McCulloch.
Modified:
maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
Modified: maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java?rev=1211692&r1=1211691&r2=1211692&view=diff
==============================================================================
--- maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java (original)
+++ maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java Wed Dec 7 22:55:08 2011
@@ -180,6 +180,7 @@ public class MavenCli
// TODO: need to externalize CliRequest
public int doMain( CliRequest cliRequest )
{
+ PlexusContainer localContainer = this.container;
try
{
initialize( cliRequest );
@@ -188,7 +189,7 @@ public class MavenCli
logging( cliRequest );
version( cliRequest );
properties( cliRequest );
- container( cliRequest );
+ localContainer = container( cliRequest );
commands( cliRequest );
settings( cliRequest );
populateRequest( cliRequest );
@@ -218,6 +219,10 @@ public class MavenCli
}
finally
{
+ if ( localContainer != this.container )
+ {
+ localContainer.dispose();
+ }
if ( cliRequest.fileStream != null )
{
cliRequest.fileStream.close();
@@ -353,7 +358,7 @@ public class MavenCli
populateProperties( cliRequest.commandLine, cliRequest.systemProperties, cliRequest.userProperties );
}
- private void container( CliRequest cliRequest )
+ private PlexusContainer container( CliRequest cliRequest )
throws Exception
{
if ( cliRequest.classWorld == null )
@@ -414,6 +419,8 @@ public class MavenCli
settingsBuilder = container.lookup( SettingsBuilder.class );
dispatcher = (DefaultSecDispatcher) container.lookup( SecDispatcher.class, "maven" );
+
+ return container;
}
private PrintStreamLogger setupLogger( CliRequest cliRequest )