On 18-Dec-08, at 9:17 AM, Brian E. Fox wrote:

I mentioned an idea in my review that seems to have been overlooked. I
think a regular .pom in the repository shouldn't be able to be used as a
"mixin".

In my examples it is a normal POM that parses on its own, but I actually need something now would make it not parse. Anyway I want to refactor for a while before I attempt to make a branch for this.

We should keep inheritance and mixins separate. The way I would
do it is with a new packaging type of mixin that would take another xml
file like mixin.xml and deploy that to the repository, similar to a
classified artifact. You have the mixin's pom and then the mixin itself. Only the mixin file can be used for inclusion in a <mixin> element. This
way the mixin can be abstract and only contain the appropriate
fragments, yet have a separate pom with all the info needed to build and
deploy said mixin to a remote repository. Mixins are useless if they
can't be put into a repo.

anyone wanna play a drinking game on the thread for each mixin mention?
;-)

-----Original Message-----
From: Shane Isbell [mailto:shane.isb...@gmail.com]
Sent: Thursday, December 18, 2008 2:57 AM
To: Maven Developers List
Subject: Re: POM construction specification

On Wed, Dec 17, 2008 at 11:49 PM, Ralph Goers
<ralph.go...@dslextreme.com>wrote:


On Dec 17, 2008, at 11:31 PM, Shane Isbell wrote:


And I've said multiple times that that isn't an adequate definition.
Jason's post provided a better clue but still doesn't define it.
Your
definition is about like me telling you that I am heading a JCP
committee
to
define a new Java entity called mixin and in it you will be able to
use
all
the existing java grammar but I tell you nothing more than that.
Would
you
have a clue how that is useful?


No it wouldn't be useful. But if you said a mixin is like an abstract
class
and all it's elements can be inherited exactly like an abstract
class,
then
I would have a pretty good clue.


Yes and no. Yes, that would be understandable but it would also be
inaccurate. The problem here is that you are introducing multiple
inheritance into the mix so that analogy doesn't fit.

If we are talking about linearized inheritance, then the analogy is
correct.

Maven doesn't currently support that and I think that is a very good
thing.

The super pom is a type of multiple (linearized) inheritance.

Shane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org


Thanks,

Jason

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

Simplex sigillum veri. (Simplicity is the seal of truth.)


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to