It seems quite confusing: Tycho is using this functionality and does not
require to be installed in M2_HOME/lib/ext.
My understanding is the following:
- for afterSessionStart, must be installed in M2_HOME/lib/ext
- for afterProjectRead, can be an extension in the POM

Jeff

On Tue, Mar 6, 2012 at 10:51 PM, Olivier Lamy <ol...@apache.org> wrote:

> 2012/3/6 Tom Bujok <tom.bu...@gmail.com>:
> > Hi guys,
> >
> > I have implemented an AbstractMavenLifecycleParticipant to customize the
> standard build behavior a bit.
> > The declaration of the participant looks like this:
> >
> > @Component(role = AbstractMavenLifecycleParticipant.class, hint =
> "testParticipant")
> > public class TestParticipant extends AbstractMavenLifecycleParticipant
> >        implements Initializable {
> > …
> > }
> >
> > I have noticed, however, that the afterSessionStart method is never
> invoked. I debugged the getLifecycleParticipants method in the
> DefaultMaven.java class and it looks like an class-loading issue.
> > Container.lookupList( AbstractMavenLifecycleParticipant.class ) method
> fetches my participant only when the context class loader is set to project
> realm's class loader, basically after this stuff is executed:
> > ClassLoader projectRealm = project.getClassRealm();
> > Thread.currentThread().setContextClassLoader( projectRealm );
> >
> > afterSessionStart() method, however, is invoked before the projects are
> read, so in general, it look like it is impossible to use the
> "afterSessionStart" method from a plugin defined in a project...
> > Am I right, or maybe I am missing something? I am willing to provide a
> patch if you explain what the default behavior should be.
> AFAIK AbstractMavenLifecycleParticipant are maven extension (i.e.
> placed in $M2_HOME/lib/ext/ ) and not project extension.
> And btw afterSessionStart is executed before reading project so
> "project realm" is unknown at this stage.
> >
> > Thanks in advance,
> > Tom Bujok
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > For additional commands, e-mail: users-h...@maven.apache.org
> >
>
>
>
> --
> Olivier Lamy
> Talend: http://coders.talend.com
> http://twitter.com/olamy | http://linkedin.com/in/olamy
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>
>


-- 
Jeff MAURY

"Legacy code" often differs from its suggested alternative by actually
working and scaling.
 - Bjarne Stroustrup

http://www.jeffmaury.com
http://riadiscuss.jeffmaury.com
http://www.twitter.com/jeffmaury

Reply via email to