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