I was planning to let this discussion mature a little bit before I
wrote up anything formal. This is just something that occurred to me
this morning (maybe a little slower than others), and I wanted to
start a real discussion.
-john
On Aug 15, 2007, at 12:36 PM, Jason van Zyl wrote:
On 15 Aug 07, at 4:42 PM 15 Aug 07, John Casey wrote:
Hi,
I'd like to propose that for Maven trunk/2.1 we capture all plugin-
facing APIs and facades inside a single maven-api artifact. This
would enumerate in a very clear fashion the public APIs that we
need to support. We're approaching a turning point in Maven, where
we'll have plugins that could feasibly run in both 2.0.x and 2.x
(>= 2.1), and these plugins need a mechanism for coping with what
will probably be critical changes in the internals of Maven.
Recent discussions about artifact resolution from plugins begin to
point at this need (eg. using maven-artifact directly vs. using
the version of maven-artifact, along with accompanying interfaces,
that come with Maven itself). I understand that some of this might
seem redundant in the presence of new facades introduced to maven-
artifact itself...I was thinking of this more as a "This is
everything you can do with Maven from inside a Mojo" artifact.
WDYT?
Why don't you toss you're ideas in here:
http://docs.codehaus.org/display/MAVEN/All+Proposals
One thing in a discussion I had with Gregory Kick was one of a
comparison of all the helper classes Spring, whereas in Maven
people writing plugins have no help really and people end up doing
includes/excludes, resolution, and everything else in a different way.
I think a set of loosely couple helping components that people
could just @component into their plugins would be a huge help. I'm
not sure we need a grand API but some helper components would
certainly make things more consistent, and those components could
certainly have consistent APIs. I know we have 10 plugins that do
includes/excludes in different ways which also makes it confusing
for using to know how to use plugins in a common way.
-john
---
John Casey
Committer and PMC Member, Apache Maven
mail: jdcasey at commonjava dot org
blog: http://www.ejlife.net/blogs/john
Thanks,
Jason
----------------------------------------------------------
Jason van Zyl
Founder and PMC Chair, Apache Maven
jason at sonatype dot com
----------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---
John Casey
Committer and PMC Member, Apache Maven
mail: jdcasey at commonjava dot org
blog: http://www.ejlife.net/blogs/john