本帖最后由 小江哥 于 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到一项新的技能呢?期待下次与同学们再见
|