One option for creating our Spring 5.0 projects is through Maven. The STS Eclipse 3.8 has built-in Maven plugins that will create Maven-ready Eclipse projects easily.
Before creating the first Maven project, check first the JRE workspace configuration of your IDE. As noted in the previous recipe, the JRE of your Eclipse must be set to the JDK's JRE. Moreover, check the embedded version of Maven installed in STS Eclipse 3.8 through the Windows
| Preferences
panel. STS 3.8 will be using its embedded Maven 3.0 for the deployment operations. The list of Maven versions is available at https://maven.apache.org/.
Follow the steps to create Maven Projects for our succeeding code snippets as follows:
- There are two ways that we can create a Maven project from scratch in STS. One option is to right-click the
Project Explorer
of the IDE in order to chooseNew
|Other...
from the pop-up window (or Ctrl-N). The other option is to click the
option then choose theFile
menuNew
|Other...
. Both of these operations will lead us to ourNew
project wizard as shown as follows:
- On the menu wizard, click the
and then theMaven
ModuleMaven Project
option. TheNew Maven project
wizard will pop-up anew. Just clickCreate Simple Project (skip archetype selection)
to create a clean project from scratch:
- Afterwards, the next wizard will require you to fill out the necessary
Group Id
andArtifact Id
for your project. In the following example, theGroup ID
isorg.packt.recipe.core
and theArtifact Id
is, let us say,ch01
. The next important field that needs to be filled isPackaging
and it must be set towar
in our case:
- Click
Finish
. Look for the filepom.xml
and insert below it the following lines to correct some Maven bugs:
<build> <finalName>ch01-spring5-cookbook</finalName> <plugins> <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.3</version> <configuration> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> </plugins> </build>
- Finally, you must have the directory structure as follows in your own project explorer:
Apache Maven is already a built-in plugin in Eclipse and helps developers manage projects and use some build tools to clean, install, and deploy Eclipse projects. It has the main configuration file which is called the Project Object Model (POM) file.
POM is the fundamental unit of work in Maven that contains information and configuration details about the project. Some core information in POM is <modelVersion>
, which currently must be set to 4.0.0
, <groupId>
, that identifies the project uniquely together with <projectId>
and <versionId>
across all projects in the Maven repository, <artifactId>
, which is the name of the WAR file without the version, and <packaging>
, which is WAR.
Later in this book, we will be adding <properties>
and <dependencies>
and <plugins>
for our Spring 5.0 code recipes in our pom.xml
file.