一、创建简单web项目
( 1 )在Dos界面运行命令:
mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
注:packaging元素包含的值是war。这种打包类型配置让Maven以WAR文件的形式生成一个web应用。一个打包类型是war的项目,将会在target/目录创建一个WAR文件,这个文件的默认名称是content-zh-.6-SNAPSHOT.war。在构建配置中加入finalName元素来自定义生成war文件的名称。
( 2 )配置Jetty插件
在编译,测试并且打包web应用后,需要部署到servlet容器中,然后测试Maven Archetype插件创建的index.jsp。通常需要下载Jetty或Apache Tomcat,解压分发包,然后复制到webapps目录,启动容器。但是现在可以通过Maven Jetty插件在Maven中运行你的web应用。
1>配置Jetty插件
2>使用如下命令运行Jetty插件<build> <finalName>simple-webapp</finalName> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <version>6.1.9</version> </plugin> </plugins> </build>
当Maven启动Jetty Servlet容器后,程序运行。Maven认为web应用程序的文档根目录为src/main/webapp。mvn jetty:run
( 3 )添加Servlet
1>在src/main/java下创建相应的目录,例如:org.sonatype.mavenbook.web的包,并且在其中添加servlet类。
2>在创建servlet类和修改web,xml文件之后,需要运行mvn compile重新编译项目。
注:目前编译会失败,因为你的Maven项目没有对Servlet API的依赖。
( 4 )添加J2EE依赖
1>添加Servlet规格说明作为依赖
2>也可以继续添加jsp规格说明作为依赖<dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-servlet_2.4_spec</artifactId> <version>1.1.1</version> </dependency>
<dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-jsp_2.0_spec</artifactId> <version>1.1</version> </dependency>