博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Tomcat 8 配合 IDEA 14 远程调试的方法
阅读量:5807 次
发布时间:2019-06-18

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

  hot3.png

刚刚生产环境上部署了个新版本应用之后出现错误了,按照以往的调试方式就是 log 输出,看看那个地方出的问题,这次终于觉得难以忍受了,决定试试 Tomcat 的远程调试效果咋样。

网上搜索了一圈之后基本有了谱,于是动手尝试。

环境说明

  • 生产环境:Tomcat 8.0.20
  • 本地开发环境:IDEA 14

远程服务器配置

Tomcat 启动方式:

./catalina.sh jpda start

注意:这个会默认将 jpda 的 address 设置为 “localhost:8000”,所以还需要编辑 catalina.sh 在其顶部增加一行:

export JPDA_ADDRESS=8000

也就是去掉默认监听的 localhost 地址,使得可以在其它开发机器上调试。

另外还需要注意的就是别忘记在防火墙上开放 8000 这个端口,当然,这个端口也可以根据需要自己修改为其它数字。

开发环境上 IDEA 设置

这个设置就比较简单了:

IDEA 远程配置

IDEA debug 设置

然后点击“调试”按钮,如果输出如下文字即表示成功:

Connected to the target VM, address: 'www.xxoo.com:8000', transport: 'socket'

调试过程说明

显然调试过程中 IDEA 上的项目应该是于服务器上版本一致的才行——否则断点往哪儿打啊,不过经常会出现的问题是调试过程中的代码行无法正确匹配,也就是服务器上应该已经进入某行或某方法了,但是 IDEA 上无法正确定位,这个不知道是谁的问题,不过我们能看到那些变量的值已经足够了不是,起码比 log 输出要省很多事了。

最后

调试完毕后可以按照正常方式重启 Tomcat 就 ok 了。

转载于:https://my.oschina.net/someok/blog/505678

你可能感兴趣的文章
react:reducer-creator
查看>>
数据库基础
查看>>
表格排序
查看>>
updatepanel中的GridView中的radiobuttonList怎么设置样式
查看>>
快速学习javaSE基础4---面向对象的编程
查看>>
关于Android四大组件的学习总结
查看>>
LeetCode 398: Random Pick Index
查看>>
uva live 7638 Number of Connected Components (并查集)
查看>>
Linux下设置svn开机自启动
查看>>
java只能的round,ceil,floor方法的使用
查看>>
雷公藤多甙治疗类风湿关节炎遭质疑
查看>>
Web前端开发学习误区,你掉进去了没?
查看>>
由于无法创建应用程序域,因此未能执行请求。错误: 0x80070002 系统找不到指定的文件...
查看>>
新开的博客,为自己祝贺一下
查看>>
numpy模块资源
查看>>
puppet任务计划
查看>>
nw打包
查看>>
【CQOI2011】放棋子
查看>>
一起来读多视图几何
查看>>
017-请你说一下软件质量的六个特征
查看>>