Maven+Tomcat实现热部署

前言:在我们开发中,项目修改后,需要重新部署到服务器上,一般过程就是先停止tomcat服务器,然后将修改过的class文件重新覆盖到项目上,再启动tomcat。或者是重新打war包,删除tomcat上旧版本的项目和war,再将war放到tomcat里(也可直接放war上去覆盖旧war,启动tomcat的时候会自动解压war,这样会自动覆盖旧版本的项目),然后重新启动tomcat,这样非常繁琐,尤其是在有多个项目的时候。为了解决这种问题,我们可以用maven+tomcat来配置热部署(不用关闭tomcat就可以直接部署)。

一、Tomcat配置

1、修改Tomcat的conf/tomcat-users.xml配置文件。添加用户名、密码、权限。

<role rolename="manager-gui" />
<role rolename="manager-script" />
<user username="tomcat" password="tomcat" roles="manager-gui, manager-script"/>

既如下图所示:
Maven+Tomcat实现热部署_第1张图片

2、重新启动Tomcat。
(1)访问tomcat主页,验证是否配置成功,点击其中一处的Manager App,输入用户密码登入。(此步可省略)
Maven+Tomcat实现热部署_第2张图片

二、maven配置

1、配置pom.xml文件。

<build>
    <plugins>
        
        <plugin>
            <groupId>org.apache.tomcat.mavengroupId>
            <artifactId>tomcat7-maven-pluginartifactId>
            <configuration>
                
                <port>8081port>
                
                <path>/path>
                
                <url>http://192.168.70.18:8080/manager/texturl>
                <username>tomcatusername>
                <password>tomcatpassword>
            configuration>        
        plugin>
    plugins>
build>

2、使用maven命令进行部署。
(1)如图所示,命令为clean tomcat7:redeploy,如果是第一次部署,则为deploy,由于pom.xml配置的tomcat插件中的path为反斜杠/,这样就表示部署到tomcat的ROOT项目(ROOT项目肯定是部署过的),因此算是覆盖tomcat自带的ROOT项目,用redeploy重新部署。
(2)记得给Skip Tests 打上勾,跳过测试,或者不打勾,则命令为:
clean tomcat7:redeploy -DskipTests
Maven+Tomcat实现热部署_第3张图片

三、其他方法(不推荐)

1、在第一步的重新启动tomcat并登入后,找到下图所示,可以将war包直接部署到tomcat。
2、如果项目很多,这样也比较繁琐,因此推荐maven来部署
Maven+Tomcat实现热部署_第4张图片

你可能感兴趣的:(Tomcat,Maven)