栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

idea,使用Remote 连接tomcat,远程DEBUG模式调试

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

idea,使用Remote 连接tomcat,远程DEBUG模式调试

idea,使用Remote 连接tomcat,远程DEBUG模式调试 前言:为什么要使用远程DEBUG模式调试?
  • 解决 在我本地是好的啊 这个世界性难题~
  • 测试环境碰到问题,直接连上Debug,不用再测试本地,再查看测试环境日志
  • 遇到一些诡异的问题,日志是看不出端倪的
  • 调试一些只能在测试环境执行的流程,如:调用微信 / 支付宝付款
  • 一些客户的环境是有非常严格的安全限制,如外网访问 ,端口防火墙限制,这使得我们常常不能复现问题,来解决问题!
相应环境
  • 服务器是:Linux,jdk1.8
  • 服务容器是: Tomcat
  • 我们编译环境:idea 2020.1,jdk1.8

注意: linux的JDK 版本与 本地环境JDK版本一致 ,代码需要一致。

配置idea
  • 点击 Edit Configurations ,编辑配置

  • 选择 Remote ,进行配置

  • 配置 Remote

  1. Debugger mode : 默认Attach

    • Attach to remote JVM:此种模式下,调试服务端(被调试远程运行的机器)启动一个端口等待我们(调试客户端)去连接;
    • listen to remote JVM:此种模式下,是我们(调试客户端)去监听一个端口,当调试服务端准备好了,就会进行连接。
  2. Transport :

    • Socket:macOS 及 Linux系统使用此种传输方式;
    • Shared memory:Windows 系统使用此种传输方式;
  3. Host:你的服务器IP地址;

  4. port:自己定义的端口。注意服务器Liunx,需要开放该端口;

  5. Command line arguments for remote JVM: 自动生成的命令行参数,这里我们需要将该命令 放入到 Tomcat中。

    • 以Linux系统,JDK版本在 5—8 之间,为例:

      export -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
      
    • 以windows系统为例:

      set -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
      
  6. usr modeule classpath: 选择你自己的项目

配置 Tomcat
  • linux :这里我们只需要关心一个文件就是 /tomcat/bin/catalina.sh
  • windows:这里我们只需要关心一个文件就是 /tomcat/bin/catalina.bat
linux , 配置 catalina.sh
#进入到 tomcat /bin 目录下

[root@localhost bin]#  vim catalina.sh
#在最后结尾加上idea自动生成的命令
JAVA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"
windows 配置 catalina.bat
set -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
测试
  • 配置

  • tomcat配置看上面步骤;

  • 测试连接成功;

  • 点击相关系统功能,成功进入断点调试;

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/681064.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号