IDEA在Debug模式下修改Java类,Recompile后不提示Reload Changed Classes,热加载失效,重启服务后修改才更新

  • Post author:
  • Post category:java



问题描述:

之前在开发SpringBoot应用,在Debug模式下启动,需要更改某个java类时,直接修改然后点菜单栏Build > Recompile ‘XXX.java’,或者是快捷键Ctrl+Shift+F9,IDEA会重新编译修改的内容,弹窗让你选择reload,然后去替换响应的class文件以实现热加载。

最近调试项目的时候,发现Recompile后不弹窗了,然后更新也没有效果,修改几行代码就要重启一下服务,服务启一次要七八分钟,影响开发效率,然后就研究了一下解决方法。


问题原因:

大概率是因为有一次点了弹窗的’Do not show this dialog’,然后选了Cancel,所以IDEA后面默认不替换classes,热加载也就不生效了。


解决方法:

File > Settings > Build, Execution, Deployment > Debugger > HotSwap

按图勾上,Reload classes after compilation这项根据自己的需要选择,上述问题大多都是这项无意选了Never导致的,这里推荐选Always,下次无弹窗提示,直接替换classes文件。



版权声明:本文为m0_51928480原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。