使用 Jrebel 插件实现热加载
来源:互联网 发布:网络机顶盒电视猫 编辑:程序博客网 时间:2024/06/05 01:53
在使用eclipse开发web应用的时候,每当你修改了一个Jsp文件或者Java文件后,你将不的不重新部署并启动web服务器,之后刷新页面才能看到修改后的效果,这样将降低我们的开发效率。这里介绍的Jrebel插件可以实现热装载class文件的功能,即我们在eclipse中修改了一个java文件、jsp文件、配置文件之后,将不再需要重新部署然后重启web服务器了,而只需要重新刷新下页面就可以看到修改之后的效果。
这里先分澄清两个概念:热部署和热加载,如下:
热部署:就是容器状态在运行的情况下部署或者重新部署整个项目.在这种情况下一般整个内存会清空,重新加载.简单来说就是Tomcat或者其他的web服务器会帮我们重新加载项目.这种方式可能会造成sessin丢失等情况。
热加载:就是容器状态在运行的情况下重新加载改变编译后的类.在这种情况下内存不会清空,sessin不会丢失,但容易造成内存溢出,或者找不到方法。因为内存无法转变成对像. 一般改变类的结构和模型就会有异常,在已经有的变量和方法中改变是不会出问题的。这种模式适合在开发调试过程中使用,免得整个项目加载,也节省了反复项目启动的时间。
另外debug模式都支持热加载很方便使用。——IDEA TOMCAT WEB开发 SSH开发修改类不重启热部署热加载。
下载Jrebel
官方下载地址:http://www.zeroturnaround.com/jrebel/ (目前官方好像已经不提供.zip的压缩版下载了,只提供eclipse的插件版下载)
Jrebel不是一个开源项目,因此你下载之后只能获得30天的试用权限,不过由于国人的过于强大,还是找到了破解版,我们可以直接下载破解版使用
破解版下载地址:http://download.csdn.net/detail/cselmu9/6238613 (5.3 破解版)
破解版下载的是一个jar,将该jar拷贝到某个目录,如:d:/bin/jrebel/jrebel.jar(如果下载下来的jar为 jrebel-x.x.jar,需要重命名为 jrebel.jar)
配置你的IDE
以eclipse为例,eclipse中找到tomcat 运行环境的配置项
Window– Preferences – Tomcat – JVM Settings
在 Append to JVM Parameters 中加入
-noverify -javaagent:D:/BIN/jrebel/jrebel.jar
-Drebel.dirs=D:\workspace\prs-framework\prs-framework-integration-test\target\classes
-Drebel.spring_plugin=true
-Drebel.struts2-plugin=true
注:
第一段(-noverify -javaagent:D:/BIN/jrebel/jrebel.jar)一定要加
第二段用于指定需要监视的目录,myeclipse中该值为:开发项目路径\WebRoot\WEB-INF\classes,在eclipse中测试这个基本可以不用加
第四段用于开启 struts2 的支持,根据项目框架决定是否需要加 (注意中间的是 - 不是 _ 不要自作主张哟,亲)
另:需要将你的 tomcat server.xml 中的 reloadable="false" 设置成 false
如果是maven项目,可以在pom.xml中加入jrebel插件支持,这样该插件可以自动帮你指定需要监视的目录,配置如下:
<plugin>
<groupId>org.zeroturnaround</groupId>
<artifactId>javarebel-maven-plugin</artifactId>
<version>1.0.5</version>
<executions>
<execution>
<id>generate-rebel-xml</id>
<phase>process-resources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
重启eclipse后启动tomcat测试,见证神奇吧!!!
- 使用 Jrebel 插件实现热加载
- 使用 Jrebel 插件实现热加载
- 使用 Jrebel 插件实现热加载
- Jrebel 热加载插件
- Eclipse使用JRebel插件实现热部署
- jrebel插件实现热部署
- MyEclipse安装JRebel插件实现热部署
- Eclipse-----JRebel Eclipse插件实现热部署
- MyEclipse安装JRebel插件实现热部署
- spring-boot 热加载实现替换Jrebel
- eclipse安装jrebel实现热加载(jrebel版本为6.5)
- jrebel 热加载
- 使用Jrebel 实现 maven+wildfly10 热部署
- Intellij IDEA使用 JRebel 搭配 maven-jetty-plugin插件实现热部署
- eclipse下安装使用jrebel,实现tomcat对class的热加载
- JRebel 实现热部署
- JRebel实现热部署
- Eclipse 安装jrebel插件,实现tomcat热部署
- DB2 Session每周讨论话题
- 关于android:layout_weight
- WGS84、GCJ-02(火星坐标)、百度坐标,Web墨卡托坐标
- 浅谈C中的malloc和free
- java常见错误整理
- 使用 Jrebel 插件实现热加载
- CSS目前最新版本为CSS3,是能够真正做到网页表现与内容分离的一种样式设计语言
- navigationBar 标题字体颜色设置
- libnet进行编程时,libnet_init()无法找到网卡的解决方法。
- Integer Inquiry
- java设计模式初体验之观察者模式
- OpenGL ES基本概念介绍
- android pcm编解码
- 在DAO中如何获得session对象