Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
Maven is a software project management and comprehension tool primarily used with Java-based projects but that can also be used to manage projects in other programming languages like C# and Ruby. Maven helps manage builds, documentation, reporting, dependencies, software configuration management (SCM), releases and distribution.
Many integrated development environments (IDEs) provide plug-ins or add-ons for Maven, thus enabling Maven to compile projects from within the IDE.
Maven's key features include:
Maven was created by Jason Van Zyl in 2002 as part of the Apache Turbine project. It became an Apache Software Foundation project in 2003. After that, several versions of Maven were released, including Maven v1.0, v2.0 and v3.0.
The fundamental unit in Maven is the project object model (POM), an XML file that includes information about the software project, configuration details that Maven uses in building this project, any dependencies on external components or modules and the build order. Maven's functionality also depends on plug-ins, which provide a set of goals that can be executed. In fact, all work is handled by plug-ins. There are numerous Maven plug-ins for building, testing, SCM, running a Web server, etc. Plug-ins are configured in the POM file, where some basic plug-ins are included by default.