JBoss.orgCommunity Documentation

Maven Tools Reference Guide

Version: 4.0.0


1. Introduction
2. Creating a Maven Project
3. Creating a Maven Module
4. Adding Maven support to an existing project

In the context of application development, Maven allows you to extend your applicaitons by referencing and utilizing resources from local and remote repositories.

Covered in this reference guide is how to create Maven projects and modules, and how to add Maven functionality to an existing project or application.

This guide does not cover how to setup a Maven repository. For information on how to setup a Maven repository consult the documentation associated with your application server or framework kit.

To create a new Maven Project, from your workspace navigate to FileNewOther and from the wizard selection screen select MavenMaven Project.


The first screen of the wizard will ask you if you wish to create a simple project (selecting this will skip the ability to select an archetype), to select a location for the project and if any projects should be added to the working set.


You can also select Advanced options concerning existing workspace projects and the naming convention to use.


The following screen is the Archetype selection screen, and will only appear when you have not selected to create a simple project on the previous screen.

Select an archetype based on the purpose of the project you are creating.


The final screen of the wizard is where you will set the Group Id, Artifact Id and project Version. The Package name will be created based on the Group Id and Artifact Id values.

You can also add specific properties associated with the chosen archetype, to the project.


Clicking Finish will bring you back to the workbench and your Maven project will appear in the Project Explorer.


A Maven module is a sub-project. To create a Maven module you will need to already have a Maven project available.

The parent project must have its Packaging option pre-configured to pom, for a module to be created and associated with it. To ensure your parent project has this option set correctly before proceeding, double-click on the pom.xml file of your parent project in the Project Explorer.

In the Overview settings page that is now displayed in your workbench, confirm that the option Packaging is set to pom. If it is not, select pom from the list menu and save the changes to your pom.xml file.


From your workspace navigate to FileNewOther and from the wizard selection screen select MavenMaven Module.


Type a name for the module in the Module Name field.


Click the Browse button beside the Parent Project field. This will launch a project selection box.

Select the project to be used as the parent project of the module you are creating, and click OK.


You will be returned to the Select a parent project screen and the Parent Project field will contain the name of the project you selected.


Click the Next button.

Select an archetype available in the list displayed. For the purposes of this example the maven-archetype-quickstart is selected.


Click the Next button.

Specify archetype parameters Group Id and Version. Ensure that the values you specify for these fields are unique from those set in the parent project.

In this example, the Group Id and Version settings of the parent project used are set to group_id and 0.0.1-SNAPSHOT respectively. For the module, Group Id and Version settings are being specified as sub_group_id and 0.1.1-SNAPSHOT respectively, to avoid conflict.


Click the Finish button.

The module will now be created and appear in your Project Explorer.


You can view and change settings associated with the module by selecting the module's pom.xml file from the Project Explorer and double-clicking on it. This will launch an Overview screen containing the module settings.


Select the project that Maven support will be added to from the Project Explorer.


Right-click on the project to bring up the context menu and click on Properties.

From the Properties screen click on Project Facets.


Select JBoss Maven Integration from the facets list. You will notice that a Further configuration required button appears at the bottom of the screen.


Click on the Further configuration required button and you can either modify or accept the default values for all fields. Click the OK button to return to the facets screen.


The Further configuration required button has now changed to Further configuration available. Click the Apply button and then the OK button to complete the addition of Maven support to your project.


Maven support has been added to the project, and a new pom.xml file appears in the list of files for the project. This can be viewed in the Project Explorer.


Double-click on the pom.xml file to view the settings associated with it. The settings here were set in the Further configuration required step, and can be edited from this Overview screen.

It is recommended that you change the Packaging option to pom to avoid any issues in expansion of the project with Maven modules in the future.