【发布时间】:2011-02-16 10:42:24
【问题描述】:
是否有用于简单 Servlet (2.5) Web 应用程序的 Maven 2 原型?
【问题讨论】:
标签: java servlets maven-2 maven-archetype
是否有用于简单 Servlet (2.5) Web 应用程序的 Maven 2 原型?
【问题讨论】:
标签: java servlets maven-2 maven-archetype
是webapp的原型:
mvn archetype:generate -DgroupId=com.acme \
-DartifactId=my-webapp \
-Dversion=1.0-SNAPSHOT \
-DarchetypeArtifactId=maven-archetype-webapp \
-DinteractiveMode=false
这将生成以下结构:
$树我的网络应用程序/ 我的网络应用程序/ ├── pom.xml └── 源 └── 主要 ├── 资源 └── 网页应用 ├── 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>
对于 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>
我不知道 NetBeans 但 Eclipse(更准确地说是 M2Eclipse)依赖 web.xml 来设置项目方面(因此您需要在导入之前更改 web.xml,Eclipse 不会更新 web 方面如果您在事后更改web.xml)。
【讨论】:
mkdir -p my-webapp/src/main/java/com/acme/ 这样的步骤可能很有用,并在该目录中放置一个示例 helloworld servlet。
我已经创建了用于创建基于 Servlet 3 的 web 应用程序的简单原型:https://github.com/maciejwalkowiak/servlet3-maven-archetype
只需克隆它,安装并生成使用 Servlet 3、无 XML、Tomcat7 就绪的项目(包括插件)
【讨论】:
你可以从
开始mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp
有关其他原型的列表,请参阅 archetypes list
【讨论】:
更新了原型编号。
注意:默认情况下,archetype 'maven-archetype-webapp' 生成 Servlet 2.3 应用程序。如需升级到 Servlet 2.5,请关注 Pascal Thivent 的 post #1343356
请参考此链接Exclusive Maven Archetype List 并点击此链接以获取How to use that archetype。
常用的原型编号有:
或者只使用下面方便的 maven 命令-
$ mvn archetype:generate -DgroupId=com.sample -DartifactId=servlet-app -Dversion=0.1-SNAPSHOT -DarchetypeArtifactId=maven-archetype-webapp
【讨论】:
命令: mvn archetype:create -DgroupId=com.lei.webapp.quickstart -DartifactId=webapp-quick-start -DarchetypeArtifactId=maven-archetype-webapp
在 pom.xml 中添加以下依赖项:
javax.servlet servlet-api 2.5
【讨论】:
我让 IDE(我的是 Intellij IDEA)为我创建基本的 webapp 结构。
转到:
文件→新建项目→从原型创建→ ...原型-webapp
这将给出基本的 webapp 结构。
【讨论】: