I'd prefer that maven die an ungainly death if it encountered two plugins with the same identifying mark.

The identifying mark being the "id" (groupId:artifactid:type) (type = "plugin")

Is there some particular use case for allowing multiple plugins with different versions confusing things?


As I have mentioned before, we need to get a bit clearer about which goals can have been touched from outside a plugin. I'd prefer that goals were internal unless marked otherwise (obviously we need a deprecated phase for this). Having a guideline for naming goals would also be worthwhile, as more plugins are created, we will have collisions. What is the goal resolution hierarchy? is there one?



I realise I have asked more than I've commented on!



Cheers,


Ben

Brett Porter wrote:
Hi,
After doing a little with the plugin manager on the weekend, I noticed (as I
suspected), that plugin "upgrading" (or downgrading via a dependency),
doesn't do what you might expect.
It seems it will always load both plugins, and I suspect it will call the
latest, even when using a dependency on an older version.
This is fine for the addition of goals, but what effect will it have on
preGoal/postGoal chains? I suspect (again untested :) that they will be run
twice.
So what I was wondering was what we expect the behaviour to be is in this
case. I would think that 1) there should only be one plugin of a type loaded at a time (easy to
change by having the manager use the artifactId as the name - removing the
version)
2) if 1.2 and 1.2-SNAPSHOT are present, use 1.2 (difficult, because we have
no concept of version X > version Y since you can use any type of string)
3) if 1.2 and 1.3 are present, use 1.3
4) if a plugin dependency element is present, use that version.
Is this what everyone else expects? If so, I think 1 and 4 should be done,
with 2 and 3 covered by a string comparator. It won't always work, but it'll
do for now until we can properly spec. it out.
Thoughts?
Cheers,
Brett
--
Brett Porter
Team Leader, Core Systems
f2 network ~ everything essential





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



Reply via email to