基于maven的javaweb项目如何使用maven-tomcat插件实现tomcat热部署

       原本当我们想运行一个web项目时我们在本地开发环境采用的方式将web容器tomcat加入到我们的ide中,然后将项目add到tomcat中启动tomcat进行访问,当我们想把项目发布到远端的测试服务器上时我们采用的方式是将项目打包然后拷贝到远端测试服务器的tomcat下面,然后启动tomcat,如果遇到错误还要重新打包拷贝,这些都能实现项目的部署,只是比较不方便而已。今天说一下使用maven-tomcat插件实现远端服务器热部署。

      首先我们要在本地的项目maven配置文件中加入maven-tomcat插件配置如下:

<build>
		<plugins>
			<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
				<artifactId>tomcat7-maven-plugin</artifactId>
				<version>2.2</version>
				<configuration>
					<!-- 控制maven-tomcat使用的本地端口号 -->
					<port>80</port>
					<!-- 项目发布到tomcat后的名称 -->
					<path>/ssmtest</path>
				</configuration>
			</plugin>
		</plugins>
	</build>

这样当我们想运行这个maven项目的时候只要在项目上右键点击-run as-maven build在Goals中输入命令就可以通过maven-tomcat插件运行项目了而不必使用本地的tomcat

       如果我们想讲项目发布到远端的服务器比如(192.168.1.110)上的tomcat(port10000)下面,我们只要配置远端的tomcat和本地的maven配置文件即可。

 首先我们配置远端tomcat的用户和角色,在tomcat目录-conf下的tomcat-users.xml文件中配置如下

<!--manager-gui实现启动图形界面,manager-script实现命令自动部署-->
<role rolename="manager-gui"/> 
<role rolename="manager-script"/> 
<user username="tomcat" password="tomcat" roles="manager-script,manager-gui"/>

然后正常启动tomcat。

在项目的maven配置文件修改为如下内容:

<build>
		<plugins>
			<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
				<artifactId>tomcat7-maven-plugin</artifactId>
				<version>2.2</version>
				<configuration>
					<!-- 控制本地tomcat端口号 -->
					<port>80</port>
					<!-- 项目发布到tomcat后的名称 -->
					<!-- / 相当于把项目发布名称到ROOT -->
					<path>/ssmtest</path>
					<username>tomcat</username>
					<password>tomcat</password>
                     <!--manager/text不能变-->
					<url>http://192.168.1.110:10000/manager/text</url>
				</configuration>
			</plugin>
		</plugins>
	</build>

 在项目上右键点击-run as-maven build在Goals中输入如下命令:

<!--首次部署使用 deploy,重新部署使用redeploy-->
tomcat7:deploy

等待部署完成访问项目http://192.168.1.110:10000/ssmtest发现可以正常使用,部署成功。同时在tomcat管理页面就可以发现已经部署的项目如图:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章