I am wondering if Brian, or any other Maven expert our there, could
explain how this warning could be avoided entirely. I have looked into
this at length when adding, for example, source jars to my distribution.
However, the warning always occurs.

I have a pretty good understanding of why the warning occurs. If you
look at the documentation for the source plugin here:

http://maven.apache.org/plugins/maven-source-plugin/jar-mojo.html

You will notice in the fourth bullet it says:

* Invokes the execution of the lifecycle phase generate-sources prior to
executing itself.

Thus, if you attach this goal to your build, then if you execute any
phase at or above package (if you use the default phase binding of
package) then this plugin effectively runs the lifecycle twice; once up
to "generate-sources" when it executes the goal, then again for your
actual build. The warning is just letting you know that running the
lifecycle twice isn't necessary since the "generate-sources" phase will
get executed via the execution of the package phase.

I also understand that the goal is purposefully designed this way so it
can be called from the command line and still behave as expected without
having to explicitly generate sources if any sources need to be
generated.

So I believe I understand the warning, but I would love to properly
configure the plugin such that it does not emmit this warning when
attaching the goal to your build.  Or perhaps this warning should simply
be suppressed entirely since Maven already seems to be aware of plugins
which fork their own lifecycle when bound to a phase of the lifecycle
and properly remove the extra fork. The warning seems to cause more
confusion than anything else.

My best guess is that for now, this is just part of Maven's core
architecture and hasn't been important enough to change. Some of this
"may" be fixed in the 3.0 release but I can't be sure of that.
Hopefully some of the experts could comment further.

---
Todd Thiessen
 

> -----Original Message-----
> From: Brian E. Fox [mailto:[email protected]] 
> Sent: Tuesday, February 17, 2009 7:31 PM
> To: Maven Users List
> Subject: RE: Removing: jar from forked lifecycle, to prevent 
> recursive invocation
> 
> This means the plugin that caused the fork to occur is 
> removed from that forked lifecycle so it doesn't fork again.
> 
> -----Original Message-----
> From: Romain Gilles [mailto:[email protected]]
> Sent: Tuesday, February 17, 2009 5:08 AM
> To: Maven Users List
> Subject: Removing: jar from forked lifecycle, to prevent 
> recursive invocation
> 
> 
> Hi all,
> I have this message during my build process but I don't understand it:
> 
> <Removing: jar from forked lifecycle, to prevent recursive invocation>
> 
> It does not provide the name of the Jar, is there anybody 
> that can help
> me, please?
> 
> Romain.
> 
> This email was sent to you by Thomson Reuters, the global news and
> information company.
> Any views expressed in this message are those of the 
> individual sender,
> except where the sender specifically states them to be the views of
> Thomson Reuters.
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to