公司项目放在远程服务器上,之前都是将项目打包放上去运行后在log中查看相关调试信息,发现问题后在本地编辑器修改后再次打包上传调试,但是这种方式实在是让人抓狂,一则不断的在大量的log中查看有效信息太累,而且log中的信息也有限;再则一直重复编辑-打包-上传-调试很折磨人,所以才想到了远程调试。搜索了网上的方法要么就是设置界面跟我不一样,要么就是即使跟他们设置的一样依然不起作用,不进断点,在尝试了多次以后终于调通,在这里记录一下,也给大家做个参考!

大前提:本地工程和发布到远程服务器上的工程代码要完全一致。重点!!!!

首先,配置Tomcat Server,步骤如下:

点击上图Edit Configurations,出现如下界面,点击 + 选择Tomcat Server-->Remote, 然后出现右侧信息。

在Server选项卡中,选择一个你本机的Tomcat服务,我在填这一栏之前它是空的,需要点击后面的configuration配置到自己本机的Tomcat;

URL:我填写的是我远程服务器部署的项目地址,用的域名+端口号

下面的Host和port就是URL的拆分,这个大家应该都懂。

配置完Server再点击Startup/Connection-->Debug,然后会看到红框的那一段命令,这里的8000是我远程服务器上Tomcat中的调试端口,具体可查看远程服务器上tomcat-->bin-->catalina.bat文件中的设置项“set JPDA ADDRESS=8000”,这个端口是可以更改的,不管改成什么,都要保持远程服务器上的Tomcat中的调试端口和本地IDEA中的debug配置中的端口一致,如下图这几个地方的端口号要一致,并且远程服务器的这个端口号要确保可以访问。

到此,本地IDEA的Tomcat Server配置完毕,点击Apply-->OK即可。

然后,配置远程服务器上tomcat中的文件

在配置之前先将上一步骤中debug的那条命令行先拷贝下来:-agentlib:jdwp=transport=dt_socket,address=8000,suspend=n,server=y

然后分情况配置:

Windows(我自己的服务器是Windows,亲测没问题)

  在Tomcat-->bin-->catalina.bat文件的第一行添加 set JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,address=8000,suspend=n,server=y

Linux (我没测过这个,大家如果是Linux 操作系统可以试试,应该也没问题,区别在于Linux 系统需要修改的文件是catalina.sh,导入关键字为export,导入值需要用单引号''括起来)

在Tomcat-->bin-->catalina.sh文件的第一行添加 export JAVA_OPTS='-agentlib:jdwp=transport=dt_socket,address=8000,suspend=n,server=y'

修改完成后保存,并重启tomcat服务

至此,IntelliJ IDEA 远程调试 Tomcat 的配置已经完成了.

验证:在本地IDEA的代码中设置断点,然后启动调试,启动调试后会输出如下内容,接着浏览器会自动弹出并访问你的远程项目地址,项目运行到断点时会进入调试信息。这样就可以进行远程Tomcat的调试了。

Connected to server
Connected to the target VM, address: '*******:8000', transport: 'socket',

写的有些语无伦次,请见谅!

转载于:https://www.cnblogs.com/linruiyi2015/p/10148550.html

IntelliJ IDEA 2018.2.2远程调试Tomcat的配置方法相关推荐

  1. MyEclipse远程调试Tomcat

    MyEclipse远程调试Tomcat 程序就是这么一个神奇的东西,有时你的一个项目,在本机上运行得还是好好的,可当你把这货放到了服务器上,同样的条件就是结果不一样.于是就灰常想看一下程序在远程运行时 ...

  2. pycharm 远程调试图文_Pycharm配置远程调试的图文步骤

    Pycharm配置远程调试方法总结 动机 一些bug由于本地环境和线上环境的不一致可能导致本地无法复现 本地依赖和线上依赖版本不一致也可以导致一些问题 有时一些bug跟数据相关,本地数据无法和线上数据 ...

  3. stm32 内部sram大小_在SRAM、FLASH中调试代码的配置方法(附详细步骤)

    聊天界面发送嵌入式大杂烩获取1TB大杂烩资料包 STM32的FLASH擦写次数有限(大概为1万次),所以为了延长FLASH的使用时间,我们平时调试时可以选择在SRAM中进行硬件调试.除此之外,SRAM ...

  4. 5加载stm32 keil_STM32在SRAM、FLASH中调试代码的配置方法(附详细步骤)

    因为STM32的FLASH擦写次数有限(大概为1万次),所以为了延长FLASH的使用时间,我们平时调试时可以选择在SRAM中进行硬件调试.除此之外,SRAM 存储器的写入速度比在内部 FLASH 中要 ...

  5. 远程调试tomcat

    在做远程调试时,在windows系统和非windows系统下的配置,Tomcat中会有所差别,具体如下: 第一步.配置tomcat 一.在windows系统中: 打开%CATALINE_HOME%/b ...

  6. IDEA远程调试Tomcat

    本地调试非常简单,就不说了 记得以前跟同事调试的时候,线上环境出了问题,看他们都是打印log日志,比较麻烦,最近看了下web相关开发内容,发现是可以远程调试的. 不过看过很多类似的文章,Tomcat ...

  7. eclipse远程调试tomcat

    项目部署到远程服务器上出现问题又缺乏日志信息的时候,特别想使用eclipse来debug查看各种信息.只要在tomcat里设置下参数重启下tomcat,就可以使用eclipse远程debug定位问题了 ...

  8. eclipse远程调试Tomcat, Hadoop集群等

    主导是JPDA(Java Platform Debugger Architecture), 它支持java中的各种调试,由两个接口(JVM Tool Interface和JDI).一个协议(JDWP) ...

  9. Intellij IDEA基于Springboot的远程调试

    简介 本篇博客介绍一下在Intellij IDEA下对Springboot类型的项目的远程调试功能.所谓的远程调试就是服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码(前提是本地的代码必须 ...

最新文章

  1. 次元网站女装穿起来,从A站到Z站,你知道哪个?谁才是你的最爱?
  2. 未定义的引用_Rust 引用和借阅
  3. 【操作】鼠标hover效果——元素凸起并产生阴影
  4. 用Pandas来美化一波图表
  5. 安装ARM交叉编译工具
  6. CCCC-GPLT L3-015. 球队“食物链” 团体程序设计天梯赛
  7. django mysql windows_Django+MySQL配置:Windows+Centos
  8. python大数据培训好不好
  9. 白话阿里巴巴Java开发手册高级篇
  10. 【VISIO绘图】VISIO绘图 学习笔记
  11. 计算机音乐蜗牛与黄鹂鸟,音乐教材《蜗牛与黄鹂鸟》教案
  12. java文章采集爬虫代码示例
  13. 电脑桌面打开计算机窗口,电脑怎么打开运行窗口
  14. android自定义网络请求框架,安卓快速开发框架(十九)XBaseAndroid Http网络请求
  15. AutoCAD使用技巧集锦
  16. uos命令_UOS与Deepin OS区别详解
  17. 2016天津成考计算机试题,2016年天津事业单位考试《职业能力测验》(部分)试题及答案解析...
  18. JFreeChart饼状图显示数字
  19. ROOT(a Data analysis Framework)-Note5: iSTEP day2-TH1::Fit()
  20. JVM:自动内存管理-垃圾收集器与内存分配策略

热门文章

  1. 深度学习框架 TensorFlow.NET 0.1.0,完善变量更新操作
  2. html怎么增加td的宽度,html td怎么设置宽度
  3. redis常用命令getex_Redis常用命令
  4. linux nginx编译安装mysql_Centos7下编译安装配置Nginx+PHP+MySql环境
  5. html+input+hidden,input type=hidden
  6. 骑马与砍杀服务器修复,骑马与砍杀21.3.1公共版和热修说明 修复联机模式
  7. hp虚拟服务器,源自基础设施灵活多变的终极自由 惠普(HP)虚拟连接技术(Virtual Connect)...
  8. php学校成员,php访问成员变量和成员方法
  9. 使用linux集体升级系统,一:Linux系统的升级
  10. 和方舟rust一样的手游_偶像梦幻祭2新活动 ES手游全新开服