版权声明:本文注明出处可以转载。 https://blog.csdn.net/lzxomg/article/details/80831611
Java web 项目 远程调试
- 远程服务器tomcat 中部署的代码 与本地 一致
- 远程调试的端口没有被防火墙拦截
本地用的eclipse,远程centos6.5中的tomcat
1. 修改远程的tomcat/bin目录下的startup.sh
找到这一行 # Better OS/400 detection: see Bugzilla 31132
在它下面添加一行内容:
declare -x CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"
- -Xdebug 是通知JVM工作在DEBUG模式下
-Xrunjdwp 是通知JVM使用(Java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:
transport 指定了调试数据的传送方式 dt_socket 是指用SOCKET模式 server=y/n VM 是否需要作为调试服务器执行。 suspend=y/n 是否在调试客户端建立连接之后启动 VM 。
2. 通过startup.sh启动tomcat
查看启动日志 有下图的内容,证明配置成功
或者通过ps -ef | grep tomcat查看启动的tomcat进程,刚才配置的-Xdebug等选项出现在进程信息中,证明配置成功
3. 本地 eclipse 调试器配置
- Name:自定义,任意名称
- Project:本机eclipse中的WEB项目,与远端服务器上部署的WEB项目一致
- Host:被调试的远端服务器ip
- Port: 远端服务器中tomcat 中添加的那一行内容中的 address的值(8000)
配置完成后点击Apply,随后点击Debug,eclipse窗口右下角出现
现在 在eclipse中打断点,然后访问远程对应打断掉代码的接口,就可以看到短点停止了。
————————————————————
springboot 项目jar命令启动项目开启远程调试
在执行jar的时候,添加上参数。如下:
java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n -jar 项目名.jar
————————————————————
idea 远程调试 改天在写。。。