
Apache Maven Cookbook
By :

Let us now build the project that was created in the preceding section.
To build the previously created simple project with Maven, perform the following steps:
mvn package
Notice the following warning (we will see how to resolve this later in this book):
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ simple-project --- [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
Check if the sources are compiled:
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ simple-project
Check if the tests are run:
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ simple-project ---
[INFO] Surefire report directory: C:\projects\apache-maven-cookbook\simple-project\target\surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.packt.cookbook.AppTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec
In the mvn package
command, the package
parameter is a phase in the build lifecycle. Maven has a default build lifecycle that has a number of phases. Each phase will execute every phase prior to it in order along with the specified phase. In this case, the package
phase executes in the following order:
The validate
phase makes sure that the project (specifically the pom.xml
file that describes the project) is in order and all the necessary information to run the project is available.
The compile
phase compiles the sources.
The test
phase compiles the test sources and then runs the test using a suitable test framework. In the earlier example, the JUnit framework is used to run the tests.
The package
phase packages the artifacts to the format specified in the pom.xml
file.