针对问题,maven web项目如何部署到容器中,如何测试,如何提交svn,在本篇中就有了答案。
maven的所有操作是通过插件来执行的,插件是maven的核心,所有的执行操作都是基于插件设定了目标,一个插件中可能有多个目标。maven的三套生命周期,都是由其本身插件来完成,除此之外,还有一些实用的插件,如下。
maven之jetty插件
什么是jetty?
jetty是一个纯粹的基于java的网页服务器和java servlet容器。尽管网页服务器通常用来为人们呈现文档,但是Jetty通常在较大的软件框架中用计算机和计算机之间的通信。jetty是eclipse基金会的一部分,是一个自由和开源的项目。该网页服务器被用在Apache ActiveMQ、apache Maven、FUSE、Eclipse等产品上。Jetty也是Lift、Red5、Hadoop等开源项目的服务器。Jetty支持最新的Java Servlet API,支持SPDY和WebSocket协议。
我们可以在myeclipse和eclipse中安装jetty容器,但更为方便快捷,我们可以直接使用maven的jetty插件。
在项目的pom.xml文件中配置 jetty,代码如下:
<span style="font-family:Microsoft YaHei;font-size:14px;"><plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>7.6.10.v20130312</version>
<configuration>
<scanIntervalSecond>10</scanIntervalSecond>
<webApp>
<contextPath>/test</contextPath>
</webApp>
<connectors>
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
<port>8083</port>
</connector>
</connectors>
<war>${basedir}/target/vms-maven-3.0.war</war>
</configuration>
</plugin></span>
<span style="font-family:Microsoft YaHei;font-size:14px;"></plugins></span>
在maven的setting.xml文件中配置如下代码:
<span style="font-family:Microsoft YaHei;font-size:14px;"><pluginGroups>
<!-- 配置eclipse插件-->
<pluginGroup>org.mortbay.jetty</pluginGroup>
</pluginGroups></span>
运行命令: mvn jetty:run
在浏览器中输入:http://localhost:8083/test 来测试应用了。
maven之自动部署到tomcat插件Cargo
什么是cargo?
配置cargo插件
<span style="font-family:Microsoft YaHei;font-size:14px;"> <plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.2.4</version>
<configuration>
<container>
<containerId>tomcat7x</containerId>
<home>D:\tomcat\tomcat7</home>
</container>
<configuration>
<type>standalone</type>
<home>${project.build.directory}/target/tomcat7x</home>
<properties>
<cargo.servlet.port>8084</cargo.servlet.port>
</properties>
</configuration>
</configuration>
</plugin> </span>
为了避免端口重复,我们设置的端口号为8084。
maven之一键式自动部署到tomcat,插件tomcat-maven-plugin
<span style="font-family:Microsoft YaHei;font-size:14px;"><?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<user username="admin" password="admin123" roles="manager"/>
</tomcat-users></span>
<span style="font-family:Microsoft YaHei;font-size:14px;"><plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.1</version>
<configuration>
<url>http://127.0.0.1:8080/manager/text</url>
<username>admin</username>
<password>admin123</password>
<path>/${finalName}</path>
<!-- 自动删除上一次部署的war-->
<update>true</update>
</configuration>
</plugin> </span>
然后启动tomcat(必须先启动tomcat, 不然会报错),执行mvn tomcat:deploy命令,引用就部署完毕。