There has been a lot of talk on the release schedule of Maven in the past (remember people desperate for 1.0 final? :). Now we have people asking to see the new and improved Maven 2.0, and we have a tech preview release:
The first Maven 2.0 Technology Preview release is now out.
Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project’s build, reporting and documentation from a central piece of information.
We’re looking forward to hearing your feedback, ideas, and (to a lesser extent :) bug reports.
If you need help with the release, please consult the documentation frequently as we continue to update it, and subscribe to the email@example.com mailing list. For more information, please see http://maven.apache.org/maven2/about.html#get-help
We welcome contributors to the Maven project – if you are interested in helping out, please get involved!
Thanks to everyone who has worked on this release!
– The Apache Maven Team
Maven 2.0 has the following major features:
- Simple project setup that follows best practices – get a new project or module started in seconds
- Consistent usage across all projects means no ramp up time for new developers coming onto a project
- Superior dependency management including automatic updating, dependency closures (also known as transitive dependencies)
- Able to easily work with multiple projects at a time
- A large and growing repository of libraries and metadata to use out of the box, and arrangements in place
with the largest Open Source projects for real-time availability of their latest releases
- Extensible, with the ability to easily write plugins in Java or other scripting languages
- Instant access to new features with little or no extra configuration
The following features are available in Maven 1.0 and will be available and much improved in Maven 2.0 through the coming releases:
- Deployment and release management
- Comprehensive project information and reporting
- Website and documentation building tools
On the reasons/goals
You’ve seen above the goals that Maven aims to achieve, however there have also been questions about why Maven 2.0 is rewritten from the successful Maven 1.0. In summary, the main goals of the new Maven 2.0 architecture are:
- To be simple to use – it should be more obvious and consistent about how things are working
- Fast – a new architecture and smaller memory footprint make it as fast as possible
- To be able to implement the features demanded that were not possible under the Maven 1.0 architecture
Unfortunately, to reach these goals – we’ve had to sacrifice backwards compatibility to do this. Instead of making many small incremental changes that would break compatibility often over time, we decided to build on a new, solid base that can be reliable for the future, and also to maintain the existing Maven 1.x product to ensure that existing users are not left out in the cold.