Another important feature of Maven is its ability to generate documentation and reports. In your simple project’s directory, execute the following command:
$ mvn site
This will execute the site lifecycle phase.
Unlike the default build lifecycle that manages generation of code,
manipulation of resources, compilation, packaging, etc., this lifecycle
is concerned solely with processing site content under the
src/site directories and generating reports. After
this command executes, you should see a project web site in the
target/site directory. Load
target/site/index.html and you should see a basic
shell of a project site. This shell contains some reports under “Project
Reports” in the lefthand navigation menu, and it also contains
information about the project, the dependencies, and developers
associated with it under “Project Information.” The simple project’s web
site is mostly empty, since the POM contains very
little information about itself beyond a coordinate, a name, a
URL, and a single test dependency.
On this site, you’ll notice that some default reports are
available. A unit test report communicates the success and failure of
all unit tests in the project. Another report generates Javadoc for the
project’s API. Maven provides a full range of
configurable reports, such as the Clover report that examines unit test
coverage, the JXR report that generates
cross-referenced HTML source code listings useful for
code reviews, the PMD report that analyzes source
code for various coding problems, and the JDepend report that analyzes
the dependencies between packages in a codebase. You can customize site
reports by configuring which reports are included in a build via the
pom.xml file.

