08 使用Maven构件Web应用

一、创建web项目
可以使用maven-archetype-webapp来创建一个最简单的web应用。

 

二、web项目配置

<modelVersion>4.0.0</modelVersion>
<groupId>com.test</groupId>
<artifactId>demo</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
	<dependency>
		<groupId>junit</groupId>
		<artifactId>junit</artifactId>
		<version>3.8.1</version>
		<scope>test</scope>
	</dependency>
</dependencies>
<build>
	<finalName>demo</finalName>
</build>

 

  这个pom文件有两个特殊地方,一是打包类型为war,二是有finalName元素。因为默认生成的war由artifactId和version等构成,可以手动指定生成war包的名称。

 

三、使用jetty-maven-plugin测试
  在进行web开发时,总是不可避免的要打开浏览器进行测试,此时就需要将项目发布到应用服务器。可能使用jetty-maven-plugin插件来简化部署。

传统的web测试要求我们编译、测试、打包及部署,而使用jetty-maven-plugin能够周期性检查项目内容,发现变更后自动更新到内置的Jetty Web容器中。
在pom.xml中指定插件,如:

<plugins>
	<plugin>
		<groupId>org.mortbay.jetty</groupId>
		<artifactId>jetty-maven-plugin</artifactId>
		<version>7.1.6.v20100715</version>
		<configuration>
		<scanIntervalSeconds>10</scanIntervalSeconds>
		<webAppConfig>
		<contentPath>/test</contentPath>
		</webAppConfig>
		</configuration>
	</plugin>
</plugins>

 

  另外,jetty-maven-plugin并不是官方插件,如果想在命令行中使用插件前缀。需要配置settings.xml,如:

 <pluginGroups>
    <pluginGroup>org.mortbay.jetty</pluginGroup>
 </pluginGroups>

 

  启动使用mvn jetty:run,Jetty的默认端口是8080,可指定其他端口,如:mvn jetty:run -Djetty.port = 7777
停止使用mvn jettyp:stop。

三、使用Cargo实现自动部署
  Cargo可用于自动化部署,它几乎支持所有的Web容器。

 

猜你喜欢

转载自lxmmt.iteye.com/blog/848671
08