博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
远程调试Tomcat
阅读量:4223 次
发布时间:2019-05-26

本文共 887 字,大约阅读时间需要 2 分钟。

调试分两种
1.没有远程调试环境
这种情况下只能通过查看远程服务器上的log来调试,如果在异常信息中出现unknown source说明编译的时候没有加入行号的信息,按如下修改
a)通过javac编译时,默认相当于指定-g:source,lines,这样编译出来的class文件中会包含源代码和行号信息
b)而通过ant编译时,默认相当于指定-g:none,这样编译出来的class文件会比较小,但是不包含任何调试信息,所以出错的时候就会打印出unknown source。修改ant的编译文件如下:
2.有远程调试环境(即开发机可以连接服务器)
修改%TOMCAT_HOME%\bin\startup.bat最后部分的内容。
set JPDA_ADDRESS=8114
set JPDA_TRANSPORT=dt_socket
set JPDA_SUSPEND=y
call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%
修改后另存为jpda.bat
然后在eclipse中操作如下:
Debug Configurations -> 新建Remote Java Application,取名字为"myDebug"
Project:调试的工程
Connection Type: Standard(Socket Attach)
Connection Properties:
Host:远程服务器地址
Port:8114
Allow termination of remote VM 打上勾。
ok了,在服务器端先运行jpda.bat,控制台显示如下信息,之后就处于等待状态了:
Listening for transport dt_socket at address: 8114
然后在eclipse中启动myDebug
这时候可以看到远程服务器的控制台又继续运行了。
等待远程服务启动完毕,现在试着在eclipse中的程序中打个断点,然后打开IE访问远程的应用,哈哈,是不是eclipse停在了你打的断点那里了。
恩恩,到此为止。

转载地址:http://hygmi.baihongyu.com/

你可能感兴趣的文章
corosync pacemaker 配置高可用集群(一)
查看>>
5种IO模型、阻塞IO和非阻塞IO、同步IO和异步IO
查看>>
nginx(一) nginx详解
查看>>
nginx(二) nginx编译安装 及 配置WEB服务
查看>>
nginx(三) nginx配置:反向代理 负载均衡 后端健康检查 缓存
查看>>
nginx(四) nginx+keepalived 实现主备+双主热备模型的高可用负载均衡代理服务
查看>>
jQuery核心--多库共存
查看>>
4 51 单片机最小系统
查看>>
6 51点亮第一个LED
查看>>
8 51 LED流水灯
查看>>
Multisim 14.0 搭建并仿真51单片机最小系统
查看>>
51 中断系统 外部中断0 外部中断1
查看>>
51 单片机 时间/计数器中断
查看>>
腾讯云本地还原mysql物理冷备
查看>>
算法图解 第3章 递归
查看>>
Java反转整数
查看>>
jdbc中Datetime与java.util.Date的相互转换
查看>>
hibernate中取得connection的方法
查看>>
如何使用log4j输出单个级别的log到指定文件
查看>>
表单元素与提示文字无法对齐的解决方法
查看>>