一、断点:
1、条件断点
本以为条件断点很难,其实就这样。
二、远程Debug
1、首先看服务器是不是在Debug模式下工作
不是则进行(tomcat/bin/catalina.sh)配置。
-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
具体解释:
- -Xdebug : 启用调试特性。
-
-Xrunjdwp: 在目标 VM 中加载 JDWP 实现。它通过传输和 JDWP 协议与独立的调试器应用程序通信。下面介绍一些特定的子选项。
- transport 这里通常使用套接字传输。但是在 Windows 平台上也可以使用共享内存传输。
- address 这是连接的传输地址。如果服务器为 n ,将尝试连接到该地址上的调试器应用程序。否则,将在这个端口监听连接。
- server 如果值为 y ,目标应用程序监听将要连接的调试器应用程序。否则,它将连接到特定地址上的调试器应用程序。
- suspend 如果值为 y ,目标 VM 将暂停,直到调试器应用程序进行连接。
2、本地IDEA进行远程Debug:
IDEA中添加 Remote Server:
只需输入机器IP和端口即可,其他无需管太多,IDEA会自动帮你搞好。
3、本地启动Remote Server:
控制台输出如下即表明成功:
后续在代码中需要debug的地方打断点,然后调用远程机器上的服务即可进入断点。
4、结束
5、远程Debug的参考:
- 详细解释原理:https://www.ibm.com/developerworks/cn/opensource/os-eclipse-javadebug/#artrelatedtopics
但实际上看不太懂,理解就好。 - 极客学院实操参考: http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/remote-debugging.html