On Sep 2, 2007, at 8:30 AM, Jason van Zyl wrote:
What are the real requirements?

They are:

1) An easy way to get a set of stable plugins that work together
2) To easily see what versions are contained in this set
3) To easily change or augment what is in this set

The current mechanism + toolings works. I know what's going to happen with plugin packs. Someone is going to want to change a version of a plugin they are using and "How do I find out what versions of plugins am I using", "How do I override what version of a plugin I'm using if it's specified in a plugin pack?", "Does plugin management win if it's in a plugin pack?". "I found a bug in the way plugin packs are processed and I can't get a plugin version I need, is there a work around?". "How do I configure plugins that have been defined in the plugin pack". So people are going to have to end up redeclaring bits to get configuration and execution information locked down and then you end up with a terrible configuration management problem.

Hehe... I think no matter what is implemented you are gonna find that users are going to ask all of these questions and more I'm sure. ;-) But of course, with a well defined contract and documentation its easy enough to give 'em a URL and tell 'em to RTFM :-P

IMO, the goal of grouping stable plugins that work together into a reusable chunk of pom.xml can be achieved by a generic pom import/ merge facility. With a few different rules on how to merge, documented of course, then it should be possible to setup a "plugin- pack" pom or a "common-profile" pom.

From what I gather the only tricky part is how the merge actually happens, what takes precedence and so on... though I think that can be simplified into a few modes of merging quite easily.

LIke for example, one mode could always prefer the local configuration over anything in the included pom. Another could warn (or error) if local pom and parent pom contain conflicting configuration.

Maybe there are some uber-wrinkles that I'm missing, but this seems rather simple... and can probably be easily inserted into (or close to) the place where the parent pom is resolved and merged.

 * * *

Anyways, I'd *REALY* like to see this feature added, and then some general use-case/best-practices implemented and documented around the feature to show uses how to create a plugin-pack or common-profile.

--jason


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

Reply via email to