今天发现一个很NB的玩意,让我们在开发的时候修改Java文件,不用重启服务器立刻生效!支持Jetty tomcat jboss等很多服务器,它就是JRebel。
http://www.zeroturnaround.com/jrebel/installation/ 这里有针对不同服务器的安装方法,基本上主流的都涵盖了,绝大多数程序员都能使用!我们公司用maven/jetty对项目进行构建和开发,下面我就来说下针对maven的使用,很简单!
(一).下载javarebel.jar,此文件可以放在你本机的任何目录下,不需要放在项目中。
(二).在pom.xml中增加一个依赖库查询和一个插件的依赖库查询
- <repositories>
-
<repository>
-
<id>zt-repo</id>
-
<url>http://repos.zeroturnaround.com/maven2</url>
-
</repository>
-
- .......................
-
</repositories>
-
-
-
<pluginRepositories>
-
<pluginRepository>
-
<id>zt-repo</id>
-
<name>Zero turnaround repo</name>
-
<url>http://repos.zeroturnaround.com/maven2</url>
-
</pluginRepository>
-
- .........................
-
</pluginRepositories>
<repositories>
<repository>
<id>zt-repo</id>
<url>http://repos.zeroturnaround.com/maven2</url>
</repository>
.......................
</repositories>
<pluginRepositories>
<pluginRepository>
<id>zt-repo</id>
<name>Zero turnaround repo</name>
<url>http://repos.zeroturnaround.com/maven2</url>
</pluginRepository>
.........................
</pluginRepositories>
(三).添加javarebel-maven-plugin
- <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>
<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>
(四).修改Jetty属性,加上<scanIntervalSeconds>0</scanIntervalSeconds> ,到这里pom.xml就修改完了。
(五).到项目目录下运行mvn javarebel:generate,它会生成一个rebel.xml到你项目的target下面,不用管它,然后执行set MAVEN_OPTS=-noverify -javaagent:D:\javarebel.jar 这个jar就是一开始下载的那个jar文件,我存在我本机D盘根目录
(六).大功告成,运行mvn jetty:run 启动你的项目修改一个java文件看看效果吧!
ps:以上这些配置只支持java文件,若修改xml还是需要重启的,当然JRebel也支持修改xml不重启,但需要配置其他的地方,这个就留给大家来发掘吧!o(∩_∩)o...
附件提供了javarebel安装指南(纯属网络资源),里面有说明怎么配置spring和struts,很实用哦!
分享到:
相关推荐
总的来说,实现WebLogic下修改Java文件后无需重启的方法多种多样,关键在于合理配置开发环境和利用服务器的热部署功能。不过,需要注意的是,这种方法虽然提高了开发效率,但在生产环境中应谨慎使用,因为热部署可能...
大家知道,在我们开发web项目的时候重启应用服务器是我们最烦恼的事情,每次修改类文件或者配置文件后,我们必须重启服务器来重新加载,使得我们的修改才能及时的显现出来,这个时候,我们只能等待服务器的重启,...
java修改配置文件无需重启服务器方法.docx
通常情况下,当我们修改了iBatis的SQL映射文件(sqlmap)后,需要重启应用服务器来使改动生效。这无疑降低了开发效率。然而,通过手动控制加载sqlmap文件,我们可以实现在不重启应用的情况下更新SQL映射,从而提高...
本文将详细介绍如何配置Apache Tomcat,使得在修改Java源码或JavaScript文件后无需重启服务器即可看到效果,但同时也会强调修改XML配置文件时仍然需要重启的原因。 #### 二、Tomcat热部署原理概述 热部署(Hot ...
完成以上配置后,当你在MyEclipse中修改类文件或JSP文件并保存时,MyEclipse应该能自动触发Tomcat的热部署,从而使更改立即生效,无需手动重启服务器。然而,需要注意的是,虽然这种方法可以提高开发效率,但在生产...
在开发Java Web应用程序时,尤其是使用Mybatis作为持久层框架的时候,经常遇到的一个问题是:当我们在IntelliJ IDEA中修改了Mapper XML文件后,需要手动重启Tomcat服务器才能看到改动的效果,这无疑降低了开发效率。...
在开发过程中,频繁地修改JavaScript文件并希望即时看到效果是常见的需求,而每次修改后都需要重启Jetty服务无疑会降低开发效率。本文将详细介绍如何在Jetty环境中配置,使得修改js文件时无需重启项目即可生效。 1....
标题中的“jrebel”是一款著名的Java开发工具,它允许开发者在不重启应用服务器的情况下,实时看到代码和配置文件的更改效果。这对于提高开发效率、加快迭代速度具有显著作用。这款工具尤其适合于大型项目或者频繁...
这样,开发者在IDE中保存代码后,无需重启服务器,就可以立即看到更改的结果。JRebel的工作原理是拦截类加载过程,动态地替换已加载的类,从而避免了整个应用的重启。 使用JRebel的步骤通常包括以下几个部分: 1. ...
为了解决这个问题,"修改Java代码不重启Tomcat"的技术应运而生,其中JRebel是一款非常著名的工具,它能够实现在不重启Tomcat的情况下热部署修改后的Java代码。 JRebel 是由Zeroturnaround公司开发的一款即时应用...
"web开发自动加载修改后的java文件"这一技术就是为了应对这个问题而提出的,其核心是使用了JRebel插件。 JRebel是一款强大的实时应用服务器插件,它允许开发者在不重启服务器的情况下,实时地看到代码的更改。这...
热部署是指在应用程序运行时,能够动态替换或更新应用的类文件或资源文件,而无需停止或重启服务器。在传统的开发流程中,每次代码更改都需要重新构建并启动服务器,这无疑浪费了大量时间。有了热部署,开发者可以...
在传统的开发流程中,修改了iBatis的mapper XML文件后,必须重启应用服务器才能使改动生效。但通过以下方法,我们可以避免这一繁琐步骤。 1. **配置热加载**:首先,我们需要在Spring或MyBatis的配置文件中启用热...
然而,每次修改代码后都需要重启服务器以查看更改效果,这无疑降低了开发效率。为了解决这个问题,开发者通常寻求“热部署”解决方案,即在不重启服务器的情况下,能够实时应用代码变更。本篇文章将详细介绍如何在...
该问题是指在jsp项目中上传文件后,重启Tomcat服务器或清理缓存时,上传的文件会自动删除的问题。 问题分析 在jsp项目中,我们通常使用DefaultServlet来处理文件上传请求。但是,在重启Tomcat服务器或清理缓存时,...
**JRebel** 是一个强大的热部署工具,它允许开发者在不重启服务器的情况下,实时看到代码变动的效果。这大大提高了开发效率,减少了等待时间。JRebel通过动态加载和解析类文件,使得应用程序能够立即识别并应用代码...
例如,可以通过网络下载新版本的类并立即生效,而无需重启服务器。 3. **jar文件的生成加载**:JAR(Java Archive)文件是Java的归档文件格式,用于集合多个类文件和其他资源。Java程序可以通过Classloader加载JAR...