[tomcat] 热部署介绍

以前指导别人做过,可惜那时项目太忙了自己事情太多,不是自己亲自去做的,不重起tomcat的情况下改变应用程序,实现热部署

tomcat中的conf目录的server.xml中的<host/>节点里添加: <Context path="/xxxxx" docBase="/xxx/xxx" reloadable="true"/> 注: path是虚拟路径; docBase 是应用程序的物理路径; reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署

 

如果工程中有静态类或者预读取的配置文件改掉,那tomcat是必须要重启的,否则无法更新内存,一般的修改,eclipse是自动后台发布的,机理应该是基于文件发布时间的判定.

 

例如: <Context path="/MyApp" docBase="D:\workspace\express\WebRoot" reloadable="true"/>

 

下载jrebel,jar;

 

在Myeclipse中配置tomcat的JDK,在JVM处加上: -noverify -javaagent:D:\jrebel3\jrebel-3.0-M1\jrebel.jar -Drebel.dirs=D:\Workspaces\MyEclipse\MyTest\WebRoot\WEB-INF\classes 这样,在启动tomcat的时候会看到 Sat Oct 23 13:36:02 CST 2010 com.zeroturnaround.javarebel.hD#new V( false ) Sat Oct 23 13:36:02 CST 2010 com.zeroturnaround.javarebel.bH#public boolean a(byte abyte0[])

[转载自:http://blog.knowsky.com/187613.htm]

原文地址:https://www.cnblogs.com/kentyouyou/p/3098659.html