作为一名Java开发者您是否会遇到这种情况:新增一个方法或字段必须重启tomcat才能对其进行调试?
有没有办法使得不重启tomcat就能调试呢.spring-loaded就可以.

spring-loaded是一个开源项目,项目地址:https://github.com/spring-projects/spring-loaded
且看下面这一段话:
Spring Loaded allows you to add/modify/delete methods/fields/constructors. The annotations on types/methods/fields/constructors can also be modified and it is possible to add/remove/change values in enum types.
意思是它允许你动态得新增/修改/删除某个方法/字段/构造方法,同样可以修改作用在类/方法/字段/构造方法上的注解.也可以新增/删除/改变枚举中的值.
 

下面来配置idea + tomcat的热部署

把spring-loaded放进tomcat的bin目录下, 然后配置jvm参数

-javaagent:springloaded-1.2.5.RELEASE.jar -noverify

使用spring-loaded实现应用热部署

可以测试下了, 看看是不是不用重启jvm就可以实现代码更新了

线上模式使用原理跟开发模式一样
1. 把springloaded-1.2.5.RELEASE.jar放到tomcat的bin文件夹下
2. 打开bin下的catalina.bat,添加如下一句
set JAVA_OPTS=-javaagent:springloaded-1.2.5.RELEASE.jar -noverify
这样就完成了spring-loaded的安装,能够检测tomcat下部署的webapp,在不重启tomcat的情况下,实现应用的热部署。 

 

 

转载于:https://my.oschina.net/yehun/blog/871086

相关文章:

  • 2021-11-26
  • 2021-08-13
  • 2021-06-08
  • 2021-12-21
  • 2021-12-05
  • 2021-11-22
  • 2021-08-05
  • 2021-05-18
猜你喜欢
  • 2021-09-14
  • 2021-06-14
  • 2022-12-23
  • 2022-12-23
  • 2021-05-10
相关资源
相似解决方案