avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Berin Loritsch" <blorit...@apache.org>
Subject Quick comparison between centipede and Maven
Date Wed, 08 May 2002 20:20:16 GMT
Each of these projects have its advantages.  But I must say at this
stage of the game, for a new project to get up and running on
centipede is a lot more difficult than with maven.

Here are the key differences:

Centipede provides a directory layout for you to fit your project into.
This may be ok for some new projects, but it is a pain to retrofit a
project.  Also, there isn't much to say what is really necessary, or
what is Centipede's idea of a good thing to have.  For example: what are
the "target" directories for?

Maven also has a directory layout, however you only need to create the
src/java and src/test directories and the project descriptor.  If there
is anything you want to override in the default directory layout like
the
position of xdocs, you change a property.  It is less obvious how to do
it in centipede.  If you have no xdocs directory, Maven will create it
for you, adding the default docs for you.

Centipede provides a nice menu system for ease of use and a progress bar
for the build process.  Unfortunately the progress bar doesn't really
advance as the build progresses.  Sometimes, I would rather just have
the
build create the jar for me.

Maven does not add any of these creature features.  However, it also
doesn't require you to use the "build.(sh|bat)" scripts.  You can use
an installed version of ant without problem.  Centipede requires the
Ant 1.5 tool.

Centipede does not force you into one way of doing things.
Architecturally,
I like the flexibility--although its complexity can be a bit scary to
newcomers.  Centipede needs a way of hiding the complexity from the
user.

Maven forces only one way of doing things.  While this does add to the
simplicity of the system, which is good, it does not easily alow users
with different needs or viewpoints on site design to change the
defaults.

                                  -oOo-

Both projects would definitely benefit from a script to generate the
framework for a new project.  That should include the project
descriptors,
the prescribed directory structure, and the option to override that
structure.  Since both projects aim to ease build experiences and ensure
a standard set of docs, the script/project utility would help change
certain things about the project over its lifetime.  That would be
better than manually editing files without being sure what you are
doing is the correct thing.

For now, I have to say that Maven has centipede beat on the "getting
started" tip.  However, I have to say that centipede has Maven beat
on extensibility.

One drawback of Maven as it stands now is in the maven:update-jars
ant task.  How does a project add a jar that is not part in the
online repository?  As it stands now, we have to ask the turbine
folks if we can upload the jar in their repository--or change the
installation to point to a different online repository.

--

"They that give up essential liberty to obtain a little temporary safety
 deserve neither liberty nor safety."
                - Benjamin Franklin


--
To unsubscribe, e-mail:   <mailto:avalon-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-dev-help@jakarta.apache.org>


Mime
View raw message