Maven
ExplainedTool
Also known as: Apache Maven
Build system for Java projects that manages dependencies through a central pom.xml file.
Maven, explained
Written by EduVerseWhat it is
Maven (Apache Maven) is a build tool for Java projects. In a pom.xml file you describe the project and list its dependencies, and Maven downloads those libraries, compiles the code, runs the tests and packages everything into a jar or war. It expects a standard folder layout, such as src/main/java and src/test/java.
Why teams use it
Before tools like Maven, developers copied jar files into projects by hand and every project was built differently. Maven gives every project the same structure and the same commands, so you can build an unfamiliar codebase right away. Gradle is more flexible; Maven’s fixed conventions make builds predictable and easy to read.
An example from work
You add a library to the dependencies section of pom.xml and run mvn clean install. Maven downloads it into ~/.m2/repository, compiles everything and runs the tests. One test fails, so the build ends with BUILD FAILURE and “There are test failures”; the details are in target/surefire-reports.
Our own explanation, not a quote from the book.
In the book
Sentences from The Software Realm, Decoded that mention Maven, exactly as printed.
2 more passages about Maven in the full book
Read every conversation where Maven comes up, with the interactive slides and demos.
Where it fits
Dependency management, building and publishing Java projects
Coverage in the book
Explained and compared with alternatives, so you know where and why it’s used.