Mac下IDEA+Tomcat的远程调试

来源:互联网 发布:专业绘画软件 编辑:程序博客网 时间:2024/06/02 12:34

学习IDEA远程调试,远程调试服务器代码更加方便。

一:原理

java远程调试的原理是两个VM之间通过debug协议进行通信,然后以达到远程调试的目的。两者之间可以通过socket进行通信。

Java远程调试的原理是两个VM之间通过debug协议进行通信,然后以达到远程调试的目的。两者之间可以通过socket进行通信。首先被debug程序的虚拟机在启动时要开启debug模式,启动debug监听程序。jdwp是Java Debug Wire Protocol的缩写。java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n zhc_application这是jdk1.7版本之前的方法,1.7之后可以这样用:java -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n zhc_application


首先被debug程序的虚拟机在启动时要开启debug模式,启动debug监听程序。jdwp是Java Debug Wire Protocol的缩写。


二:步骤:

最初要先确认本地代码和服务器的代码是一致的。

1.首先要启动远程调试,首先要把服务器端的Tomcat的启动参数设置一下

 shell连接服务器,进入tomcat目录下的bin目录找到catalina.sh文件,vim打开,找到JAVA_OPTS项,添加

-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=5555

其中的‘5555’ 是自己配置的端口,可任意,注意冲突就好。

然后 ./shutdowm.sh 关闭tomcat 

关闭的时候 如果出现类似字样 说明已经设置成功,重启就好

 ./startup.sh启动tomcat  

服务器端设置到此结束。

2.打开idea打开项目  Run--》Edit Configurations然后在弹出的界面点击“+”  选择TomcatServer--》remote

然后会弹出如下界面


名字和下面的Remote Conection Settings写好自己的服务器和端口,在Startup/Connection选项中点击debug,然后在下方的port填写之前填写的端口,本例:5555  然后Apply OK  此时本地的IDEA就配置好了

3.调试:



切换到上面新建的服务,然后点击debug按钮。注意控制台的信息,如果出现

Connected to the target VM, address: '101.200.33.138:5555', transport: 'socket'

说明上面所做的工作都是正确的。

注意在代码上面打上断点,然后向服务器发送请求,就会正常的在断点处停下,但运行的是服务器上面的代码。

4.调试吧大笑

原创粉丝点击