原文链接:https://blog.csdn.net/achenyuan/article/details/83686896
前言
调试时,我们希望边修改代码边展示效果。
前置条件
让IDEA支持自动编译
修改IEDA设置
打开Settings --> Build-Execution-Deployment --> Compiler,将 Build project automatically勾上。
点击 Help --> Find Action…,或使用快捷键 Ctrl+Shift+A来打开 Registry…,将 其中的****compiler.automake.allow.when.app.running勾上。
方法一:使用JRebel
配置JRebel工具
安装jrebel插件,等等一些操作,百度一下,同时要激活,配置里工作方式是work Offiline。
其实jrebel的作用是让修改后的代码能重新编译,加载到JVM虚拟机里。
点击Edit Configurations。在弹出的框里按如下方式配置
修改代码,然后点击移动IDEA,必需让IDEA失去焦点,Jrebel工具才能正常工作。
调试时工作
设置断点,修改代码,想让代码生效,要删除调试栈,然后按F9让程序继续跑。
具体操作
删除完栈后按F9,让程序再次执行到这个断点。这个方法的好处是不用再从程序调试过来,会直接定位到当前断点处,同时修改的代码也会生效,因为我们只是删除调试栈,其它没处理。
方法二:不依赖JRebel
如果我们不安装JRebel插件的话,IDEA同样提供让修改代码生产的操作。
工具栏:Run->Reload Changed Classes
删除调试栈,按F9继续程序,和上面的一样。
方法三:其它
参考在IDEA下使用Spring Boot的热加载(Hotswap)
它有个缺点,能项目的侵入比较严重。
————————————————
版权声明:本文为CSDN博主「陈袁」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/achenyuan/article/details/83686896