maven - java修改 不重启 服务器

本文介绍了一款名为JRebel的工具,该工具允许开发者在不重启服务器的情况下即时查看Java代码更改的效果。适用于多种服务器环境,如Jetty、Tomcat和JBoss等。文章详细阐述了如何通过Maven进行配置,并提供了具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java 不重启 服务器

      今天发现一个很NB的玩意,让我们在开发的时候修改Java文件,不用重启服务器立刻生效!支持Jetty tomcat jboss等很多服务器,它就是JRebel。

 

      http://www.zeroturnaround.com/jrebel/installation/  这里有针对不同服务器的安装方法,基本上主流的都涵盖了,绝大多数程序员都能使用!我们公司用maven/jetty对项目进行构建和开发,下面我就来说下针对maven的使用,很简单!

 

      (一).下载javarebel.jar,此文件可以放在你本机的任何目录下,不需要放在项目中。

      (二).在pom.xml中增加一个依赖库查询和一个插件的依赖库查询

 

Xml代码

      (三).添加javarebel-maven-plugin

Xml代码

  

 

(四).修改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,很实用哦!

 

感谢BeanSoft提供的破解版,地址在34楼!!!!!

信息源: http://www.javaeye.com/topic/479469
### 使用 Jetty Maven Plugin 的方法 Jetty 是一种轻量级的 Java Web 容器,`jetty-maven-plugin` 插件允许开发者通过 Maven 构建工具快速启动嵌入式的 Jetty 服务器来运行 Web 应用程序。以下是关于如何在 Maven 项目中配置和使用 `jetty-maven-plugin` 的详细介绍。 #### 配置插件 要在 Maven 项目中使用 `jetty-maven-plugin`,需要将其添加到项目的 `pom.xml` 文件中的 `<build>` 节点下: ```xml <build> <plugins> <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>9.4.43.v20210629</version> <!-- 版本号可根据需求调整 --> <configuration> <scanIntervalSeconds>10</scanIntervalSeconds> <!-- 自动扫描文件变化的时间间隔 --> <webApp> <contextPath>/myapp</contextPath> <!-- 设置应用上下文路径 --> </webApp> <httpConnector> <port>8081</port> <!-- 修改默认端口为 8081 --> </httpConnector> </configuration> </plugin> </plugins> </build> ``` 上述配置说明如下: - **`<groupId>` 和 `<artifactId>`**:定义了使用的插件名称及其所属组。 - **`<version>`**:指定了插件的具体版本号[^1]。 - **`<scanIntervalSeconds>`**:设置自动重新加载应用程序的时间间隔(单位秒),适用于开发环境下的热部署功能。 - **`<contextPath>`**:设定访问该 Web 应用时的 URL 上下文路径。 - **`<port>`**:更改默认监听端口以避免与其他服务冲突[^3]。 #### 启动 Jetty 服务器 完成以上配置后,在命令行界面切换至项目根目录并执行以下指令即可启动 Jetty 服务器: ```bash mvn jetty:run ``` 此操作会依据之前所设参数初始化一个基于 Jetty 的 HTTP Server 实例,并使其处于等待请求状态直至手动终止进程为止[^2]。 如果遇到类似于 `[ERROR] Failed to execute goal...Address already in use` 这样的错误提示,则可能是因为目标端口被其他程序占用所致;此时可以考虑更换未被占用的新端口号或者关闭占据当前端口的服务实例后再尝试重启 Jetty。 另外值得注意的是,当面对更复杂的场景比如 SSL 支持或是多模块工程集成等情况时,还需要进一步扩展相应的配置选项才能满足实际需求。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值