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


Reply via email to