Recently, I was working on a project that requires Spring MVC with maven. Following are the steps that guide you setting up the project. Before you start, make sure you have maven installed in your machine, or follow
this link to maven download page.
Create a basic maven project
mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DgroupId=com.mycompany.app -DartifactId=my-app
With couple other prompts such as choosing version number, maven should then create a basic maven project structure.
Create Web Application structure
open up the folder that maven has created, and under src/main, create two new folders, 'resources' and 'webapp'. Your folder structure should looks like following
./pom.xml
./src
./src/main
./src/main/java
./src/main/resources
./src/main/webapp
./src/main/webapp/WEB-INF
./src/test
./src/test/java
At the root of the directory structure is a XML file (always called pom.xml) that Maven expects. The pom.xml
(POM is short for Project Object Model) describes the things specific to your project that can't be inferred automatically like dependencies, the name of the project, etc.
Directory | Description Directory's Contents (relative to the project root) |
src/main/java | Contains the Java source code for your project |
src/main/resources | Contains any classpath-relative resources for your project (like, a Spring application context .xml file) |
src/main/webapp | the root web context folder for your web application files, such as WEB-INF, jsp,etc |
src/test/java | Contains the java source code for your test classes. This directory will not be included in the final build. All tests herein will be compiled and all tests will be run. If the tests fail, it aborts the build.
|
Modify pom.xml
Build your war
go to the root of your application folder
mvn clean package
this will build your project and package it into a war file, which you can then deploy to your web application server
Following is a complete spring mvc setup using the instructions above. You can download it and revise for your mvc application
Sample Spring MVC Project
To import the project into your eclipse, you can use m2eclipse for your Eclipse IDE.
http://www.sonatype.org/m2eclipse/