Eclipse远程调试Tomcat

1. 应用场景

通过JavaJPDA远程调试功能将本地源码与远程部署的应用连接起来实现调试,其中程序源码与服务器上发布的编译代码版本要保持一致,保证调试定位准确。调试的过程中,部署在应用服务器上的应用处于DEBUGE模式。

2. Tomacat配置

2.1. JPDA参数

JPDAJava平台上的调试器定义了一个标准的体系结构。默认情况下,JVM并没有启用JPDA。需要在启动JVM的命令行加载以下参数:-Xdebug -Xrunjdwp:transport=dt_socket, address=8000,server=y,suspend=y

-Xdebug
启用调试特性
-Xrunjdwp
启用JDWP实现,它包含若干子选项:
transport=dt_socket
JPDA front-end和back-end之间的传输方法。dt_socket表示使用套接字传输。
address=8000
JVM在8000端口上监听请求。
server=y
y表示启动的JVM是被调试者。如果为n,则表示启动的JVM是调试器。
suspend=y
y表示启动的JVM会暂停等待,直到调试器连接上。suspend=y这个选项很重要。如果
你想从Tomcat启动的一开始就进行调试,那么就必须设置suspend=y。


2.2. 配置方式一

打开apache-tomcat\bin目录将在启动文件中设置CATALINA_OPTS参数

      1)       Windows系统在startup.bat开始处中增加如下内容:

SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000

     2)       Linxu系统在startup.sh开始处中增加如下内容:

declare -x CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"

ps:linux打开端口命令的使用方法。 nc -lp 8000 &(打开8000端口)。查看是否打开8000端口netstat -an | grep 8000

2.3. 配置方式二

1·复制startup.bat startup_JPDA.bat并做如下配置:

set JPDA_TRANSPORT=dt_socket        --连接方式

set JPDA_ADDRESS=8000                    --监听端口

set JPDA_SUSPEND=y                          --是否挂起

call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%

 

注意将call "%EXECUTABLE%" start %CMD_LINE_ARGS% 换成了call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%。如下图所示:

171016_j7MD_1017184.png

如果配置挂起参数suspend=y(配置方式一)或JPDA_SUSPEND=y(配置方式二),JVM会使用socket方式,打开8000端口并挂起,等待客户端(Eclipse 远程Debug模式)接入,主要用于应用程序启动过程中的调试。如图:

171101_Gkn7_1017184.png

3. Eclipse配置

1)打开Eclipse,导入项目源码(与被调试的代码一致)

2)打开Eclipse工具栏上Run -->Debug Configuration

3)选中左侧Remote Java Applilcation右键New—打开debug配置页面

171125_39AP_1017184.png

4)设置参数

Project:  选择被调试的项目

Connection Type: 使用SocketAttach

Hosttomcat服务器所在IP地址

Port8000(前面配置的监听端口)

5)设置完成后,记得点击Apply按钮然后点击下方的Debug按钮,eclipse便可以已Debug模式调试远程tomcat上发布的代码了。

4. 参考

       1·http://blog.csdn.net/jarfield/article/details/5250915

    其中有关于如何远程调试JVMJPDA简介


转载于:https://my.oschina.net/ksss/blog/343138

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值