你好,游客 登录 注册 搜索
背景:
阅读新闻

IntelliJ IDEA 2016 + Tomcat 设置热部署

[日期:2017-12-25] 来源:简书  作者:夜_雪 [字体: ]

之前一直是使用 Eclipse+Jetty 开发的,然而在一次OSX系统更新之后,eclipse居然由于版本过低打不开了。于是一怒之下换成了IDEA+Tomcat。

下面就来讲一下如何用IntelliJ IDEA 2016+Tomcat实现热部署。

热部署好处

什么是热部署呢?举例来说,就是如果你启动了一个应用,但是突然改写了一个文件,如果要使这个改动生效,我们通常需要重新启动这个应用,然而这个启动过程可能会花费很长时间。

那有没有其他办法可以既使改动生效,又不至于去浪费时间重启应用呢?有!那就是热部署。热部署可以在你改动文件之后,系统自动或人工手动触发重新加载class的机制,从而实现不需要启动整个应用,却能使改动生效的效果。

热部署配置

1.本文默认你的IDEA已经安装了Tomcat,没有安装的请先去安装,安装方法见本文最后;

2.打开Edit Configurations;

3.选择已有的server或者点击左上角新建一个server;

4.选择Deployment,点击左下角的+号,选择Artifact,然后选择你对应的项目;

5.选好后是下面这个样子,右侧可以编辑你的项目路径;

6.选择Server,主要有以下几点需要注意:

  • VM options: 如果你的tomcat打印出来的日志乱码,那么把这项设置为-Dfile.encoding=UTF-8
  • On 'Update' action: 执行Update时的操作,为了实现热部署,这项一定要选择Update classes and resource
  • On frame deactivation: 这项根据我的观察,如果选择Update classes and resource,会在你最小化Idea或者切换到其他应用后自动进行热部署

7.保存;

8.debug启动。(注意一定要debug启动!)

测试

1.写一个简单的接口;

@Controller
@RequestMapping("/inter/mytest")
public class TestJsonController {
    @RequestMapping(value = "test", method = RequestMethod.POST)
    @ResponseBody
    public String phoneChange(@RequestBody String param){
        System.out.println("参数: "+param);
        System.out.println("初始");
        return param;
    }
}2.

对接口发起一个请求,查看Output;

3.接下来我们修改一下代码;

@Controller
@RequestMapping("/inter/mytest")
public class TestJsonController {
    @RequestMapping(value = "test", method = RequestMethod.POST)
    @ResponseBody
    public String phoneChange(@RequestBody String param){
        System.out.println("参数: "+param);
        System.out.println("改变");//将 ‘初始’ 改成 ‘改变’
        return param;
    }
}

4.

注意了!这里需要点击一下Update;

5.选择第二项,然后点OK;

6.然后左下角会提示 "1 class reloaded" ,证明你的修改已经成效了;

7.再次发起请求测试,后发现输出已经变了。

至此,大功告成!

更多IntelliJ IDEA相关教程见以下内容

使用IntelliJ IDEA 13搭建Android集成开发环境图文教程 http://www.linuxidc.com/Linux/2015-09/123416.htm

IntelliJ IDEA 12 创建Web项目图文详细教程 http://www.linuxidc.com/Linux/2013-05/84213.htm

用IntelliJ IDEA开发Android程序图文教程 http://www.linuxidc.com/Linux/2013-03/81471.htm

IntelliJ IDEA 12开发haXe NME应用配置指南 http://www.linuxidc.com/Linux/2013-01/77227.htm

IntelliJ IDEA运行Play Framework的test mode http://www.linuxidc.com/Linux/2013-07/87694.htm

Ubuntu 13.04 安装IntelliJ IDEA 12 http://www.linuxidc.com/Linux/2013-11/93014.htm

IntelliJ IDEA 12创建Maven管理的Java Web项目(图解) http://www.linuxidc.com/Linux/2014-04/99687p2.htm

IntelliJ IDEA 常用快捷键列表及技巧大全  http://www.linuxidc.com/Linux/2015-04/116398.htm 

在 Ubuntu Linux 上安装 IntelliJ IDEA  http://www.linuxidc.com/Linux/2016-12/137946.htm

IntelliJ IDEA 的详细介绍请点这里
IntelliJ IDEA 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-12/149802.htm

linux
相关资讯       Tomcat热部署  IntelliJ IDEA 2016 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款