IntelliJ IDEA lets you create a Maven project or add a Maven support to any existing project.
Check out a quick video tutorial on how to start working with Maven projects.
Create a new Maven project
Launch the New Project wizard. If no project is currently opened in IntelliJ IDEA, click Create New Project on the Welcome screen: Otherwise, select from the main menu.
Select Maven from the options on the left.
Specify project's SDK (JDK) or use a default one and an archetype if you want to use a predefined project template (configure your own archetype by clicking Add Archetype).
- On the next page of the wizard, specify the following Maven basic elements that are added to the pom.xml file:
GroupId - a package of a new project.
ArtifactId - a name of your project.
Version - a version of a new project. By default, this field is specified automatically.
If you are creating a project using a Maven archetype, IntelliJ IDEA displays Maven settings that you can use to set the Maven home directory and Maven repositories. Also, you can check the archetype properties. Click Next.
Specify the name and location settings. Click Finish.
Import a Maven project
On the main menu, select File | Open.
- In the dialog that opens, select the pom.xml of the project you want to import. Click OK.
- On the first page of the Import Project wizard, in the Import Project from External model select Maven and click Next.
(This page is not displayed if you selected the pom.xml.)
- Specify Maven settings or use the default selection.
The default settings are usually sufficient for a project. However, you can select the following (frequently used) options:
Search for projects recursively - if you select this option, the sub projects (if any) are located and set up correctly.
Import Maven projects automatically - if you select this option, the project is imported automatically every time you make changes to your POM file and you don't need to control manually when to import the changes. However, note that it might take some time to re-import a large project. Also, note that the changes made in the IntelliJ IDEA project (for example, adding a dependency to your project through the Project Structure dialog) will be overwritten on re-import by POM since IntelliJ IDEA considers the POM file as a single source of truth.
IntelliJ IDEA displays the found projects and you can select the ones you need to import.
Specify the project's SDK and click Next.
Specify a name and the location of your project.
Add a new Maven module to an existing project
You can add a Maven module to the project in which you are already working.
In the Project tool window, right-click the project folder and select . Alternatively, on the main menu, select to open the New Module wizard.
If you used main menu to add a module then the process of adding a module is the same as Creating a new Maven project.
If you are adding sub modules by right-clicking the root folder then the process of adding a new module is shorter. You need to specify the name of your module in the ArtifactId field. The rest of the information is added automatically and you can use either the default settings or change them according to your preferences.
Also, note that Add as module to and Parent fields, by default, display the basic Maven attributes (groupId, artifactId, and version) of the project to which you are trying to add the module. You can click to change the information displayed.
Configure a multi-module Maven project
IntelliJ IDEA lets you create a multi-module Maven project. The multi-module project is defined by a parent POM file with several sub modules.
Create a Maven parent project. IntelliJ IDEA creates a standard Maven layout including an src folder.
In the Project tool window, remove the src folder (you would need it for very rare cases for your general project you don't need the src folder for the parent POM).
In the Project tool window, right-click your project (or in the main menu, click File) and select New | Module to add a sub project.
In the New Module wizard following the instructions on how to add a module, specify the necessary information and click Finish.
The src folder is created automatically and you can open POM and add a packaging that you need. IntelliJ IDEA adds the module to the parent project. IntelliJ IDEA also adds name and the description of the sub project to the parent POM. Note that the
packagingin the parent POM is defined as
pomsince it is an appropriate packaging for the parent project which refers to other sub projects.
Last, but not least, IntelliJ IDEA adds the description of the parent POM to the sub project's POM. You can click in the left gutter to quickly open the parent POM from your sub project.
- You can also add dependencies to the parent POM that will be inherited by the sub projects.
Open Maven Projects tool window to see that all changes made in the parent POM are reflected in sub projects.