eclipse通过tomcat热部署web项目

怎么配置eclipse热部署

本文章将会演示怎么配置eclipse调试器在不重启服务器的情况下支持热部署,热插拔或者热码替换。 
环境:

  • Eclipse 4.4(老版本也一样支持)
  • Eclipse Tomcat 插件

1. 热部署例子

通过这个简单的热部署例子,可以在不用重启tomcat的情况下是代码修改生效。假设一个简单的springMVC Web项目已经通过eclipse部署到tomcat里。

1.1 源代码

@Controller
public class TaskController {

    @RequestMapping(value = "/task", method = RequestMethod.GET)
    public ModelAndView index() {

        logger.debug("index()");

        ModelAndView model = new ModelAndView();
        model.setViewName("index");
        return model;

    }

 ......
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

访问 : http://localhost:8080/project/task

//output 
DEBUG c.m.o.web.controller.TaskController - index()

1.2 修改代码,添加一些日志

@Controllerpublic class TaskController {

    @RequestMapping(value = "/task", method = RequestMethod.GET)
    public ModelAndView index() {

        logger.debug("index() - NEW - NO RESTART");

        ModelAndView model = new ModelAndView();
        model.setViewName("index");
        return model;

    }
 ......
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

再次访问:http://localhost:8080/project/task

//output 
DEBUG c.m.o.web.controller.TaskController - index() - NEW - NO RESTART

2. 在eclipse里面配置热部署

双击tomcat,打开tomcat的配置界面,按如下几个步骤配置eclipse热部署: 
这里写图片描述

2.1 单击“Overview”选项卡

2.1.1 展开“Server Options”,勾选“Serve modules without publishing”选项

这里写图片描述

2.1.2 展开”publishing“,勾选”Automatically publish when resources change“选项。这个配置是用来热部署资源,如:JSP,XML和properties文件等。

双击tomcat 
勾选自动发布当资源改变时

2.2 单击”Modules“选项卡,确保”Auto Reload“是被禁用的

设置

2.4 以DEBUG模式启动tomcat,热部署在DEBUG模式下才可用

3. 限制

热部署只支持方法内代码的修改,如果添加了新的类或方法依然需要重启才能生效。 
为了模拟这种情况,尝试添加了一个新方法,弹出了提示框,JVM不能热切换这个修改的代码。 
替换失败

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值