Reputation: 92387
Is there a Maven 2 archetype for a simple Servlet (2.5) web application?
Upvotes: 49
Views: 47294
Reputation: 12932
I have created simple archetype for creating Servlet 3 based webapps: https://github.com/maciejwalkowiak/servlet3-maven-archetype
Just clone it, install and generate project that uses Servlet 3, no XML, Tomcat7 ready (plugin included)
Upvotes: 15
Reputation: 421
I let the IDE (mine is Intellij IDEA) create the basic webapp structure for me.
Go to:
File → New Project → create from archetype → ...archetype-webapp
This will give the basic webapp structure.
Upvotes: 0
Reputation: 331
command: mvn archetype:create -DgroupId=com.lei.webapp.quickstart -DartifactId=webapp-quick-start -DarchetypeArtifactId=maven-archetype-webapp
Add following dependency in pom.xml :
javax.servlet servlet-api 2.5
Upvotes: 1
Reputation: 4781
Updated archetype number.
Note: By default archetype 'maven-archetype-webapp' generates Servlet 2.3 application. For upgrading to Servlet 2.5 kindly follow post #1343356 from Pascal Thivent
Refer this link Exclusive Maven Archetype List and follow this link for How to use that archetype.
Frequently used archetype numbers are:
OR just use below handy maven command-
$ mvn archetype:generate -DgroupId=com.sample -DartifactId=servlet-app -Dversion=0.1-SNAPSHOT -DarchetypeArtifactId=maven-archetype-webapp
Upvotes: 1
Reputation: 570315
There is an archetype for webapp:
mvn archetype:generate -DgroupId=com.acme \
-DartifactId=my-webapp \
-Dversion=1.0-SNAPSHOT \
-DarchetypeArtifactId=maven-archetype-webapp \
-DinteractiveMode=false
This will generate the following structure:
$ tree my-webapp/ my-webapp/ ├── pom.xml └── src └── main ├── resources └── webapp ├── index.jsp └── WEB-INF └── web.xml
Where the web.xml is a Servlet 2.3 web.xml:
$ cat my-webapp/src/main/webapp/WEB-INF/web.xml
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>
For a Servlet 2.5 web application, replace it with something like this:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<display-name>Archetype Created Web Application</display-name>
</web-app>
I don't know for NetBeans but Eclipse (more precisely M2Eclipse) relies on the web.xml
to set the project facets (so you need to change the web.xml
before the import, Eclipse won't update the web facet if you change the web.xml
after the facts).
Upvotes: 70
Reputation: 3610
you can start with
mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp
For a list of other archetypes,please refere to archetypes list
Upvotes: 2