Creating a multi-module Maven project
A multi-module Maven project aggregates several Maven projects into a single one. In this chapter, we will create three modules that form the whole application:
webapp
: A Vaadin web application packaged as a WAR file that includes everything needed to deploy it to a server such as Tomcat, Wildfly, Jetty, or any other Java serverapi
: A Java API packaged as a JAR used by the webapp and any functional moduleexample-module
: An example functional module that uses theapi
JAR to add functionality to the application
All these modules are aggregated into a single Maven project with the name chapter-02
. Let's start by creating this aggregator project by using the pom-root
Maven archetype. Run the following in a terminal:
mvn archetype:generate \ -DarchetypeGroupId=org.codehaus.mojo.archetypes \ -DarchetypeArtifactId=pom-root \ -DarchetypeVersion=RELEASE
Use the following properties when prompted:
groupId
:packt.vaadin.datacentric
artifactId
:chapter-02
version
:1.0...