[ https://jira.codehaus.org/browse/MNG-5206?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stuart McCulloch updated MNG-5206: ---------------------------------- Attachment: MNG-5206.20111206.patch AFAICT the 'container' member variable in MavenCli is only used by the ITs, hence it will never get set when Maven is called from the command-line (this variable could also do with a more specific name imho). The attached patch will dispose of per-request containers while still allowing the ITs to use a cached container for multiple requests. You could also consider adding a dispose method to dispose of the cached container which could be used by the ITs if necessary. With this patch, the component from the example plugin is disposed as expected. > plexus container never disposed > ------------------------------- > > Key: MNG-5206 > URL: https://jira.codehaus.org/browse/MNG-5206 > Project: Maven 2 & 3 > Issue Type: Bug > Components: Plugin API > Affects Versions: 3.0.3 > Reporter: Jan Sievers > Attachments: MNG-5206.20111206.patch, MNG-5206.patch, > plexusDisposeBug.zip > > > When I use a plexus component which implements > org.codehaus.plexus.personality.plexus.lifecycle.phase.Disposable, dispose() > is never called. > Since maven is creating the plexus container, it should also dispose it (on > maven session end?). > Also see discussion on sisu-dev: > http://dev.eclipse.org/mhonarc/lists/sisu-dev/msg00001.html > Attached sample project demonstrates the issue. > Steps to reproduce: > 1. 'mvn install' sample project > 2. Use the test mojo: 'mvn > org.apache.maven.plugins.test:plexusDisposeBug:0.0.1-SNAPSHOT:test' > => plexus component is injected but never disposed. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira