简单的Servlet应用程序的Maven原型

dea*_*mon 45 java maven-2 servlets maven-archetype

是否有简单的Servlet(2.5)Web应用程序的Maven 2原型?

Pas*_*ent 66

这里一个原型Web应用程序:

mvn archetype:generate -DgroupId=com.acme \
                       -DartifactId=my-webapp \
                       -Dversion=1.0-SNAPSHOT \
                       -DarchetypeArtifactId=maven-archetype-webapp \
                       -DinteractiveMode=false
Run Code Online (Sandbox Code Playgroud)

这将生成以下结构:

$ tree my-webapp/
my-webapp/
??? pom.xml
??? src
    ??? main
        ??? resources
        ??? webapp
            ??? index.jsp
            ??? WEB-INF
                ??? web.xml

web.xml是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>
Run Code Online (Sandbox Code Playgroud)

对于Servlet 2.5 Web应用程序,请将其替换为以下内容:

<?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>
Run Code Online (Sandbox Code Playgroud)

我不知道的NetBeans但是Eclipse(更精确的m2eclipse)依靠web.xml设置项目方面(所以你需要改变web.xml导入之前,如果你改变了Eclipse将不会更新Web方面web.xml的事实后).

  • 可能有用的是添加一个像`mkdir -p my-webapp/src/main/java/com/acme /`这样的步骤,并在该dir中放置一个示例helloworld servlet. (5认同)

Mac*_*iak 14

我创建了简单的原型来创建基于Servlet 3的webapps:http://maciejwalkowiak.github.io/servlet3-maven-archetype/

只需克隆它,安装并生成使用Servlet 3的项目,没有XML,Tomcat7就绪(包括插件)

  • 链接不再可用 (2认同)