A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小江哥 黑马粉丝团   /  2018-4-11 14:41  /  1319 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 小江哥 于 2018-4-11 14:41 编辑


我们为什么需要远程调试,本地调试不就可以了吗?
同一份代码,我们本地测试没有问题,但是部署到测试环境之后,android/ios同学告诉你访问接口获取不到数据,而通过日志又无法准确定位问题的时候,那有没有一种方法,可以让我们在开发工具中去debug服务器上的程序呢,这种情况下,remote debug就派上用场了。
我们在使用远程调试时,有一个条件必须满足:
1.本地代码与测试机器上运行的代码必须一致,一个空格都不能差

开始配置:
1.测试机器上的tomcat配置
修改catalina.sh文件,在最前面加上如下代码:
CATALINA_OPTS="-Xdebug-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
注意:上面的命令必须写成一行中间不能有换行
参数说明
-Xdebug                              :启用调试模式
-Xrunjdwp<sub-options>       :通知JVM使用java debug write protocol运行
transport=dt_socket             :通过transport指定调试数据的传送方式,dt_socket是指使用socket方式
address=8000                      :指定远程调试使用的端口
server=y                             :y代表作为调试服务器启动
suspend=n                          :启动时不加载暂停
这个时候,我们就可以启动tomcat了,如果启动成功,tomcat日志文件(catalina.out)中会有如下输出:
Listening fortransport dt_socket at address:8000
2.eclipse配置
1.将视图切换到JavaEE

2.点击Debug Configurations

3.双击Remote Java Application


大家是不是又GET到一项新的技能呢?期待下次与同学们再见

1 个回复

倒序浏览
我来占层楼啊   
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马