在完成idea工程简单应用后,接下来实现热部署。

简单应用地址:http://wibiline.iteye.com/admin/blogs/2072454

一、安装JRebel插件

1. 在线安装

File->setting或者直接点设置的图标进入


 

 在线下载并安装,安装的插件在C:\当前用户下\.jrebel 和.IntelliJIdea13。

2. 破解插件

下载破解补丁具体要找到对应版本的,这边用的是5.5.2的破解版本(但实际安装的是5.5.3,照样可以使用)将破解版里面的jrebel.lic拷贝到C:\当前用户下\.jrebel 目录下;jrebel.jar替换C:\当前用户\.IntelliJIdea13\config\plugins\jr-ide-idea\lib目录下的jrebel.jar文件

打开idea后,看到jr图标就代表安装插件成功,还有在设置里面会多出Jrebel,如下:


 License为valid就代表破解成功了。

二、部署项目工程的两种方式

方式一、结合Artifacts部署项目

1. 打开项目配置project structure



 根据项目Modules配置Artificials

2. tomcat加载项目



 然后填写应用名称,转到Server页签进行配置



 两个地方都修改成Update classes and resource

3. 修改Jrebel参数



 设置redeploy时间,这样修改java文件后,jre会自动监测到。(不过这样设置是否会很占内存?)后台会有提示信息,如:2014-05-29 19:13:12 JRebel: Reloading class 'MyServlet'.

经过这三步设置,一般就可以了。这样貌似连rebel.xml都不用生成,就可以实现热部署了。记得以jr方式启动tomcat(就是点那个jr图标了),而不是直接启动tomcat。

方式二、External Source加载项目工程

1. 修改class输出目录

 
class文件输出到工程本身的WEB-INF目录下

2. tomcat加载项目

 选择到web工程的根目录即WebRoot,这个目录直接包含工程本身的jsp、html等文件还有我们配置的class输出内容。这样jsp有修改就可以直接显示,而class就由jre监测。

注:用这种方式加载项目的,在server里面就没有Update classes and resource了

3.生产rebel.xml

右键项目,可以看到Jrebel选项,选择rebel.xml即可自动生成,xml主要内容是监测class目录和web工程目录

4. 设置idea自动编译

 这4个步骤设置好,用jr启动tomcat就可以了。

总结:两种方式都是以tomcat目录下localhost的配置文件进行加载项目,配置文件里指定加载的路径。Artifacts方式的,class不仅要生成output,同时在Modules那边也会指定class的生成目录,感觉多生成了一份,没什么必要,不知道这样的好处在哪里,暂时不懂。而External Source加载项目工程的方式,直接在Modules指定class生成目录到本工程下,而jsp本身就是工程下面的,所以在tomcat的配置文件那边直接指定到工程目录下即可。所以个人暂时采用方式二进行处理,用一段时间试试。

遇到的问题:采用方式二部署项目的时候,tomcat启动,找不到工程的jar包,而工程明明有引入对应的jar包了。

问题原因:jar包目录lib跟web根目录同一级别,tomcat启动的时候无法加载到这个lib。虽然项目编译能通过,但发布的时候就会有问题。

问题解决:将lib目录放于WEB-INF目录下即可

IDEA+Tomcat+JRebel热部署的更多相关文章

  1. IDEA+Tomcat+JRebel热部署1

    所需资源下载: jrebel_6.4.2a  概述 JRebel是一个J2EE热部署的工具.使用它可以减少浪费8-18%的开发时间在项目的构建和部署上.之前只是听说过,一直没有实践,今天实际使用了一把 ...

  2. Jrebel热部署配置完整教程(IntelliJ IDEA、Jrebel、spring boot、springboot、eclipse、Tomcat)

    标签:IntelliJ IDEA.Jrebel.spring boot.springboot.eclipse.Tomcat1.安装插件并激活插件安装参考:http://blog.csdn.net/u0 ...

  3. eclipse 于 Tomcat于 热部署 project

    eclipse在 Tomcat中热部署project 1.在eclipse中国安装一个tomcat插件:SysdeoEclipse Tomcat Launcher plugin(http://www. ...

  4. JRebel热部署神器的配置(Eclipse,非教程,就自己看看)

    1.安装下载 直接下官方正版的就好了 eclipse->help->eclipse marketplace 搜索JRebel 然后按步骤一步步安好 安装好记得重启 2.注册 这东西在搞活动 ...

  5. Eclipse中安装JRebel热部署教程

    Eclipse中安装JRebel热部署教程 前言        Eclipse安装JRebel插件可快速实现热部署,节省了大量重启时间,提高开发效率. 本文只介绍Eclipse安装JRebel插件版本 ...

  6. Eclipse - 安装 run-jetty-run 插件及使用 jrebel 热部署

    安装 run-jetty-run 插件 1. 下载 run-jetty-run 2. 解压至 Eclipse/MyEclipse 安装目录下的 plugin 3. 右键 web 项工程,选择 Run ...

  7. 转载:tomcat实现热部署的配置

    tomcat实现热部署的配置   我们实现热部署后,自然就可以通过maven操作tomcat了,所以就需要maven取得操作tomcat的权限,现在这一步就是配置tomcat的可操作权限. 进入tom ...

  8. 菜鸟教程之工具使用(四)——借助JRebel使Tomcat支持热部署

    JRebel是一个J2EE热部署的工具.使用它可以减少浪费8-18%的开发时间在项目的构建和部署上.虽然Java也提供了HotSpot的JVM,但是如果你修改的类中有方法名称变动的话,HotSpot就 ...

  9. 借助JRebel使Tomcat支持热部署

    JRebel是一个J2EE热部署的工具.使用它可以减少浪费8-18%的开发时间在项目的构建和部署上.虽然Java也提供了HotSpot的JVM,但是如果你修改的类中有方法名称变动的话,HotSpot就 ...

随机推荐

  1. Data scientist———java实现常见的机器学习代码(跟百度深度学习研究院师兄学机器学习)

    2016-05-02开始决定好好记录一切有关<数据科学家>的学习过程.记录学习笔记. --------------------------------------------------- ...

  2. epoll & socket 连接数突破

    http://shenfeng.me/how-far-epoll-can-push-concurrent-socket-connection.html

  3. mysql 查询表结构

    use information_schema; select column_name, column_type, data_type, is_nullable, column_comment from ...

  4. python import, from xx import yy

    区别: 用import modulexx/packagexx.moduleyy是导入某一模块,如果想引用模块的内容(class, method,variables...)必须用全名,即 [module ...

  5. Windows Server 2012 在桌面上显示”我的电脑”图标

    1.本地方式如果是在Windows Server 2012本地控制台下,直接按Win(键盘上的微软徽标键)+R,输入: rundll32.exe shell32.dll,Control_RunDLL ...

  6. SB Admin 2 学习笔记1

    需要掌握能够搭建起一个 dashboard 的能力, 因为很少有运维开发团队有专职的前端, bootstrap 也要讲个基本法. SB Admin 2, 一个免费的 bootstrap theme, ...

  7. web.config数据库连接字符串

    我们在做VB数据库经典实例这本书上的五个小例子和做学生信息管理系统时,都需要通过Vb链接数据库,在众多的链接方式中connectionstring字符串应该是较为简单的一种方式,下面我来详细介绍它的一 ...

  8. .net学习笔记----HttpRequest,WebRequest,HttpWebRequest区别

    WebRequest是一个虚类/基类,HttpWebRequest是WebRequest的具体实现 HttpRequest类的对象用于服务器端,获取客户端传来的请求的信息,包括HTTP报文传送过来的所 ...

  9. C++ 系列:虚函数

    Copyright © 1900-2016, NORYES, All Rights Reserved. http://www.cnblogs.com/noryes/ 欢迎转载,请保留此版权声明. -- ...

  10. Linux deepin 下sublimes配置g++ openGL

    参考 :http://blog.csdn.net/u010129448/article/details/47754623 ubuntu 下gnome只要将代码中deepin-terminal改为gno ...