关于在IDEA上对SpringBoot+Dubbo项目的调试
原因:
开发过程中不可避免的一步操作就是调试自己的代码了,由于本人是最新由eclipse转战IDEA工具,故而对IDEA的远程调试技术不甚了解,又因为工作上的需要,所以在各个技术博客寻找有关技术总结,但是无奈都不是很成功,虽然最终调试出来了,我还是觉得很有必要总结一下相关操作。
关于IDEA远程debug操作的设置
1.可以从这两个地方进入—>Edit Confugurations。
2.打开SpringBoot列表,就是需要debug的项目,在右边添加虚拟机启动项,填写内容为:
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9904
打开dt_socket远程端口设置。(此处我遇到一个问题后面再说明)
3.点击左上角加号,选中Remote选项,添加远程设置。
4.设置内容如下,此处端口号应该和上面jvm打开的远程端口号一致,jvm参数也一致。
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9904
5.启动SpringBoot项目,可以看到控制台打印语句如下:
6.选中刚刚添加的远程debug设置,点击右边的debug按钮,开始监听远程debug端口,当控制台输出如下语句表示成功。
关于过程中遇到的问题
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9904
关于这个参数串中的suspend=n的设置:
当suspend 参数为y的时候,先启动boot项目,再启动debug远程调试,之后boot项目才能正常执行;suspend 参数为n,则可以看到boot项目完全启动,之后再启动debug远程调试。boot项目正常启动,且debug项目正常启动之后才能进入调试模式。
网上很多关于idea开启SpringBoot的debug操作说明都是在pom文件中添加jvm启动参数,然后再设置remote参数的,设置的都是为y的情况,但是我一直没有成功,原因未知。