I would use composition instead of inheritance and create helper components for those things. Pushing all the helper methods, when in most cases hardly any of them will be used, is not a good design.

We definitely need helps for making classloaders (take the one from jetty run), working with include/excludes, operating on resources, working with dependencies, and so on. This should not all go into the AbstractMojo as it will also expose these things as APIs.

A set of components for helping with common tasks where people can pick and choose what they like would be better.

On 5-Apr-08, at 12:01 PM, nicolas de loof wrote:
Hello,

Plugin developer only require to implement the Mojo interface, but in most
(all ?) the case they extend AbstractMojo.

Having myself created or contributed multiple plugins, I had to solve the
same issues many time, using an copy/paste.

Could we make the AbstractMojo class more usefull by providing some
commonly-used support methods ?

I myslef had many time to build a Classloader for the executed project to be able to load project classes from a class processing tool. I've not created a feature lits (yet) but just looking at Maven + Mojo plugins, we could
find many common requirements.

Nicolas.

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
jason at sonatype dot com
----------------------------------------------------------

We know what we are, but know not what we may be.

-- Shakespeare



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to