Maven

Maven is a Java project management and project comprehension tool. Maven is based on the concept of a project object model (POM) in that all the artifacts produced by Maven are a result of consulting a well defined model for your project. Builds, documentation, source metrics, and source cross-references are all controlled by your POM. Look here to see the full list of Maven's features .

For more information on getting started with Maven, see the Getting Started guide.

Maven has many goals , but in a nutshell Maven aims to make the developer's life easier by providing a well defined project structure, well defined development processes to follow, and a coherent body of documentation that keeps your developers and clients apprised of what's happening with your project. Maven alleviates a lot of what most developers consider drudgery and lets them get on with the task at hand. This is essential in OSS projects where there aren't many people dedicated to the task of documenting and propagating the critical information about your project which is necessary in order to attract potential new developers and clients.

The Big Picture

The intent of Maven is to make intra-project development highly manageable in the hopes of providing more time for cross-project development. You might call it cross-project pollination or the sharing of project development knowledge, this is what Maven attempts to encourage.