|
-
The project object model (POM) is the basis of how Maven works.
Development and management of your project is controlled from
the the project model. Currently you can store your project
object model in an XML file, but we are also working on RDBMS
storage using
ObjectBridge
. Here's what a Maven POM
looks like in
XML
form.
-
A single set of Ant files are used to build any number of projects
that you are managing. No more keeping track of countless build
systems. As improvements are made to the Maven build system
all Maven users benefit!
-
Integration with Gump. For those who are not familiar with Gump it
is a tool used at Jakarta to help projects maintain backward
compatibility with their clients. If you have a Maven project
descriptor then you can easily participate in nightly Gump
builds that will help your project stay abreast of the impact
your changes actually have in Java developer community. We are
working on our own massive build tool but integration with
Gump comes at no cost to Maven users.
-
Site publication based on the POM. Once the POM is accurate
your developers can easily publish the project's content which
includes custom documentation plus Maven's extensive documentation
set based on your project's sources. Currently Maven provides the
following:
-
Change log document created directly from repository information.
-
Cross referenced sources
-
Source metrics
-
Mailing lists
-
Developer list
-
Dependency list
-
Unit test reports including coverage
-
Article Collection
-
Software Development References
-
Software Development Process Documentation
-
Distribution publication based on the POM. Once the POM is
setup accurately you can easily publish distributions safely
knowing that the distributions being made match exactly what
has been tagged in your repository.
-
Maven encourages the use of a central repository of JARs. Maven
comes with a mechanism that your project's clients can use to
download any JARs required for building your project from a
central JAR repository much like Perl's CPAN. This allows users
of Maven to reuse JARs across projects and encourages communication
between projects to ensure backward compatibility issues are
dealt with. We are collaborating with the folks at
Ibiblio
who have graciously
allowed the central repository to live on their servers.
-
Directory layout guidelines. Maven comes with documentation on how
to layout your project's directory structure so that once you learn
the layout you can easily navigate any other project that uses
Maven.
|