美文网首页linux-基础服务
tomcat 热部署和热加载

tomcat 热部署和热加载

作者: 宇晨棒棒的 | 来源:发表于2019-06-13 16:55 被阅读0次

    1.热部署:

    原定义:tomcat处于运行状态时,能够监控webapps目录下的文件,如果有新的web应用被加入到此目录下,会被自动发布这个web项目.

    2.实现方式:  将 Host标签中的autoPlay的值设置为true

    3.配置文件:conf/server.xml中:

    <Host name="localhost" appBase="webapps   unpackWARs="true" autoDeploy="true">

    参数解释:

    name属性指定虚拟主机的主机名,一个Engine中至少有一个Host组件,Host的name属性与Engine组件的defaultHost属性相匹配。

    appBase属性:代表项目存放的目录文件名

    unpackWARs属性:指定了是否将代表Web应用的WAR文件解压,如果为true,通过解压后的文件结构运行该Web应用,如果为false,直接使用WAR文件运行Web应用

    autoDeploy属性:和项目热部署有关。

    4.热加载(必须在debuge模式下才会起作用):

    当Context标签的reloadable属性的值为true时,就实现了热加载。

    定义:tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新的,服务器会自动重新加载Web应用。  

    前提:只有在debug模式下,该属性才起作用,普通模式下,就算你reloadable="true",也不会生效(class文件不会被更新,tomcat不会重启)。

    实例:

    <Context path="/mobile/cahshier" docBase="/usr/local/tomcat/webapps/mobile/cahshier" autodeploy="true" reloadable="true"/>

    debuge模式启动tomcat:

    在catalina.sh中的首行添加:  注意:端口一定要是8000,其他的话试了几次连不上

    CATALINA_OPTS="-Xdebug  -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"

    相关文章

      网友评论

        本文标题:tomcat 热部署和热加载

        本文链接:https://www.haomeiwen.com/subject/tegsfctx.html