> -----Original Message-----
> From: JACOB, ERIC [mailto:[EMAIL PROTECTED]
> Sent: 12 August 2004 16:04
> To: Avalon framework users
> Subject: Magic Questions
>
> Hi all,
>
> I'm new to Avalon's world and I'm really excited about using it in my
> projects, but I have a simple question.
>
> Why Magic instead of Maven as build system?
Context: Avalon has 116 different versions projects with a stack of
interdependencies between them.
Maven is ok for a small number of projects. Maven is *not* ok when the
number of projects you dealing with enters into three digits. Managing
versioned artifact reference across projects becomes impossible without
major work-around due to the absence of any centralized version
management or any support for transitive dependency management. In
addition, maven has some structural problems in its plugin layer which
raise serious concerns when maintaining a large number of projects.
> Maven is a great tool and I used it in several projects, so I'm
wondering
> what are the motivations behind Magic.
Once upon a time two hard-core Avalon developers where working away on
two separate activities, both requiring maven plugins. These two
developers happened by chance to be passing comments back and forth via
IM as they pursued their respective goals. As the morning unfolded,
both developers hit different bugs in the underlying maven machinery
(not the first time for either individual, but probably the first
simultaneous occurrence of blocker problems rooted in the underlying
maven plugin model). This, backed by a lack of support for centralized
version management in maven, and lack of transitive dependency
management set the context for the conclusion that there must be a
better way.
Within a matter of a week, perhaps two, two different build solutions
were created to prototype the assumption that 'it could not be that
hard'. Both solutions kind of build off each other as they moved
forward and before the month was out, the respective development
activities converged and Magic was born. The solution leveraged a
reasonable solid background and experience in meta-content-management
and surprised both of the core developers with massive improvement in
build performance.
The end result is a build system with:
1. complete support for centralized version management
2. fully supporting transitive dependencies
3. native recognition of the difference between build,
test and runtime dependencies
4. full repository support consistent with the maven model
5. solidly grounded on ant as the enabling technology
6. including a dynamic ant plugin framework
7. smarter/better build strategies (artifacts and site)
8. native support for meta-data management plugins
9. combined with the ability to easily incorporate foreign
projects group data into a local build solution
There's no turning back!
Cheers, Steve.
>
> Thanks,
>
> Eric
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]