远程DEBUG的必要性 由于部署环境的差异性,相信很多朋友都碰到过开发环境正常测试过的功能在测试环境甚至生产环境下出现bug的情况。...倘若是测试环境,我们还多了一项可供选择的手段——远程调试——将程序在测试环境中以debug模式启动,在本机使用IDEA在工程中设置断点进行调试。...该参数同时包含了一系列的调试选项; transport 指定了调试数据的传送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于Windows...平台; address 调试服务器的端口号,客户端用来连接服务器的端口号; server=y/n VM 是否需要作为调试服务器执行; suspend=y/n 是否在调试客户端建立连接之后启动 VM...; 演示 远程项目启动后本地直接 然后把断点打好就行 ,就和在本地使用效果一样 注意: 本地文件内容必须和远程项目的文件内容一致(包括位置)在使用debug过程中不能动文件内容否则那一块
幸好Java是有远程DEBUG的支持的,而且Intellij-IDEA也实现了相关的功能,今天学习并且记录一下....-jar huyan-demo.jar 参数说明: -Xdebug:JVM在DEBUG模式下工作; -Xrunjdwp:JVM使用(java debug wire protocol)来运行调试环境...server:=y表示当前是调试服务端,=n表示当前是调试客户端; suspend:=n表示启动时不中断. address:=8000表示本地监听5555端口。...添加一个新的启动项,选择Remote,之后在配置信息里面填入你启动的服务端的IP地址及调试端口. 之后点击debug按钮,像本地一样的开始debug吧~.
简介 本篇博客介绍一下在Intellij IDEA下对Springboot类型的项目的远程调试功能。...所谓的远程调试就是服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码(前提是本地的代码必须和远程服务器运行的代码一致)中设置断点,每当有请求到远程服务器时时能够在本地知道远程服务端的此时的内部状态...填写name,配置Host地址(远程服务器地址)和端口(选一个未被占用的端口)。...经过以上步骤,已经获得了启动远程服务器的参数。在启动springboot时默认使用java命令来启动。...启动完成,对需要debug的代码打上断点,剩下的操作步骤就是访问远程服务器对应的业务请求,本地就会同步debug。其余的操作与本地debug相同,此处就不再赘述了。
在深入学习elasticsearch的过程中,遇到有疑惑的源码时,如果能打断点单步调试,往往会取得事半功倍的效果,今天的实战内容就是通过IntelliJ IDEA远程连接运行中的elasticsearch...源码导入成功后开始远程调试,菜单操作如下图: ? 新增一个远程配置,如下图: ?...如下图,这时候在工具栏上可以看见上面配置的elastic6.1.2,选中后点击红框2中的debug按钮,即可开始远程连接: ? 如果网络连接正常,会提示远程连接成功,如下图: ?...至此,IntelliJ IDEA远程调试elasticsearch的实战就完成了,在您学习elasticsearch的过程中,希望本文能给您带来一些参考。...建议 除了远程调试,自己修改和编译elasticsearch源码也是有效的学习手段,推荐您参考文章《Elasticsearch6.1.2源码下载和编译构建》。
博主说:在调试代码的过程中,为了更好的定位及解决问题,有时候需要我们使用远程调试的方法。在本文中,就让我们一起来看看,如何利用 IntelliJ IDEA 进行远程 Tomcat 的调试。...对于 标注 3, 标注 3:调试模式,默认为Attach; Attach:此种模式下,调试服务端(被调试远程运行的机器)启动一个端口等待我们(调试客户端)去连接; Listen: 此种模式下,是我们...然后,复制 标注 1,即 IntelliJ IDEA 自动生产的命令行参数,然后导入到 Tomcat 的配置文件中。...至此,IntelliJ IDEA 远程调试 Tomcat 的配置已经完成了,调试的后续步骤按正常的调试技巧进行就可以啦!...最后,远程调试的功能真的很强大,善用远程调试,远离 Bug!
一.配置服务器 在catalina.sh 中添加 address 调试端口 9999 catalina.sh的位置在tocmat下的bin目录 以下方法任选其一 第一种方法 JAVA_OPTS="...模式运行 当控制台出现“Connected to the target VM, address: ‘xx.xx.xx.xx:9999’, transport: ‘socket’”的字样即可,记得加入要调试的断点
web项目部署到tomcat上之后,有时需要打断点单步调试,如果用的是Intellij idea,可以通过如下方法实现: 开启debug端口,启动tomcat 以tomcat7.0.75为例,打开bin...在bin目录下执行命令catalina.bat jpda start,可以启动tomcat并开启远程调试的端口 在Intellij idea中远程连接tomcat 现在已经在Intellij idea中打开了一个
远程调试 当然有解决方案,这就是远程调试(Remote debugging)。...接下来我们将使用流行的 Java IDE,由 JetBrains 出品的 IntelliJ IDEA 来进行远程调试。...使用 IDEA 进行远程调试 IntelliJ IDEA 进行远程调试并不复杂经过下面几个步骤就可以很方便的配置。 3.1 本地参数配置 ?...3.3 开启远程调试 ? 点击箭头所示的 绿色甲虫按钮 (快捷键 Shift + F9) 就启动调试了,然后设置好本地代码的断点,让远程的逻辑触发断点逻辑就可以进行打断点调试了。...总结 正如我在本文中介绍的那样,使用 IntelliJ IDEA 进行远程调试非常简单,只需几个步骤即可使用。有些情况下它很方便地解决了我们的问题。但是它不应该被滥用,应该被合理地使用。
远程调试-附加 vs2019,msvsmon.exe启动对应程序的版本,x86对应x86 ?...vs中选择附加调试,vs低版本的远程调试需要本机和远端的用户名和密码完全相同,vs2019试了下,没有这个问题了 ?...远程调试-启动 远端配置共享目录,然后选择程序路径 \remote-pc\share-directory\dest.exe ? 运行即可远程启动调试
本文简单介绍 IDEA 编辑器的调试功能,主要包括断点调试、单点调试、高级调试。可以收藏本文章,使用到的时候方便查找。 1.设置断点 ? 选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可。...2.开启调试会话 ? 点击红色箭头指向的小虫子,开始进入调试。 ? IDE下方出现 Debug 视图,红色的箭头指向的是现在调试程序停留的代码行,方法 f2() 中,程序的第11行。...具体步骤如下: 在自定义方法发f1()处设置断点,执行调试 ? 点击 ? ? 3.3 Force step into ? 该按钮在调试的时候能进入任何方法。 3.4 step out ?...高级调试 4.1 跨断点调试 设置多个断点,开启调试。 ? 想移动到下一个断点,点击如下图: ? 程序将运行一个断点到下一个断点之间需要执行的代码。...结束调试后,应该在箭头1处把所设的断点删除(选择要删除的断点后,点击上方的红色减号)。 4.3 设置变量值 ?
编辑 tomcat/bin/catalina.sh 把 localhost 改 0.0.0.0,否则 tomcat远程调试只能本机访问 if [ "$1" = "jpda" ] ; then if...启动调试
补充:Alt+F8 可以通过在 Debug 的状态下,选中对象,弹出可输入计算表达式调试框,查看该输入内容的调试结果 。 第一个红框是我输入的参数,第二个是我执行之后显示得结果。 ?
配置IDEA远程调试 菜单Run - Edit Configurations… 增加远程配置 填写远程服务IP,调试端口,选择待调试的模块路径 复制用于remote JVM的命令行参数 2....增加启动参数,重启远程服务 使用第一步配置获取的命令行参数 -Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=*:5005...启动远程调试 选择远程调试项目 执行调试 启动调试输出如下 Connected to the target VM, address: '10.1.2.221:5005', transport: 'socket
主要内容 tomcat 远程debug tomcat-manager psi-probe监控 tomcat调优 JDWP 协议 修改startup.sh ## exec "$PRGDIR"/"$EXECUTABLE..." start "$@" exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@" 修改catalina.sh,放开调试地址。...在配置列表中,下拉选择配置,执行调试。 ? 在idea中设置断点,浏览器中访问url,触发函数。 debug可以在任意时刻对线上系统进行调试。...普通进程调试 命令行添加下面参数: -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n
IDEA 远程调试,像运行本地代码一样调试远程主机上的程序,以排查远程程序的BUG或代码执行流程。...概述 原理:本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息。 被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令。...调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接。...permanent #重载入添加的端口: firewall-cmd --reload #移除指定端口: firewall-cmd --permanent --remove-port=20400/tcp 远程服务中开启...Configurations,打开“Run/Debug Configurations”窗口; 点击工具栏上的“+”按钮,下拉菜单中选择“Remote”或者“Remote JVM Debug”; 设置 Host 为远程服务器的域名或
前言 实际开发中由于项目是部署在Linux服务器上,本地开发可以通过debug进行调试,然而在服务器上运行时出现问题无法直接定位到具体是哪行代码出现了bug,加大问题的排查,好在在idea中可以实现远程调试...,本文就这个问题进行学习 实际操作 新增远程debug 设置好Host之后点确定复制jvm参数 jvm参数为: agentlib:jdwp=transport=dt_socket,server=...y,suspend=n,address=5005 打包项目将得到的jar包推送到远程服务器,并启动项目,命令为: java -Xdebug -agentlib:jdwp=transport=dt_socket...,server=y,suspend=n,address=5005 -jar meas.jar 启动本地的远程调试 agentlib:jdwp=transport=dt_socket,server=y...,suspend=n,address=5005 开放5005端口 启动本地调试 该问题尚未解决: 参考视频网址:https://www.bilibili.com/video/BV1Vb4y1Q7KJ?
Debug的时候调试功能必不可少,各个集成环境调试的思想和步骤肯定是一样的,只不过快捷键和图标不太一样而已 借着记录Intellij Idea的调试快捷键和图标含义,总结一下常用的调试功能 Intellij...Idea的编译和调试快捷键总结如下: shift+F10:编译 ?...shift+F9:调试 ? 按下调试后,在Intellij下方出现如下的界面 ? F9:调试窗口的小三角 ? ,执行到下一个断点 shift+F8: ?...右键点击x可以【set value】,在调试时直接设置x的值,用在对【条件语句】的调试比较方便 最后感慨一下,执行每一句都能显示相应值的功能太帅了,虽然下面的调试窗口也可以看…… ?...做个对比,VS中常用的调试快捷键:F5执行到下一断点,F10逐过程,F11逐语句
1.如何使用远程Master Debug 在Master端的spark-env.sh文件中添加如下参数 export SPARK_MASTER_OPTS="-Xdebug -Xrunjdwp:transport...information unavailable 4860 Jps 通过IDE 建立一个remote application Master主机IP 10000 在本地的代码打断点,debug按钮开始调试...---- 2.如何使用远程Worker Debug 在Worker所在节点的配置文件中添加一个环境变量 export SPARK_WORKER_OPTS="-Xdebug -Xrunjdwp:transport...information unavailable 2923 Jps 用一个IDE工具连接 建立一个remote application 172.16.0.12 10001 在本地的代码打断点,debug按钮开始调试...cn.itcast.spark.WordCount的main方法 用一个IDE工具连接 建立一个remote application 172.16.0.13 10002 在本地的代码打断点,debug按钮开始调试
远程调试的原理 本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息。 被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令。...调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接。...如何进行远程调试 idea设置 [在这里插入图片描述] 远程项目设置 idea设置好了,复制命令行参数,我们需要去启动项目的地方设置,启动项目有通过tomcat启动的,也有通过springboot内置tomcat...[在这里插入图片描述] 问题 可能需要远程服务器的防火墙放行5005端口 ### sudo vim /etc/sysconfig/iptables -A INPUT -m state --state NEW...-m tcp -p tcp --dport 5005 -j ACCEPT ### 重启生效: sudo systemctl restart iptables 远程代码需要与本地代码完全一致 参考:https
现在很多项目都是直接部署到服务器上,通常都是没有GUI界面的,也就是说没有办法进行本地调试。...在日常工作中远程调试是非常重要的一个技能,虽然说这个没办法解决线上问题,但是可以在测试环境下进行远程调试从而找到线上问题的解决方法,因为这种方式比日志更加清晰,操作难度更低。...下面通过调试weblogic服务器的方式来进行举例(为什么用weblogic,因为我刚好不会哈哈,工作需要才接触的)。...weblogic是有自己的调试方式的,但是我没有深究,这个对于我要表述的内容关系不大,因此没有说明。...IDEA设置 按照如图所示步骤即可配置好调试模式,名字改不改其实关系不大。 导入JAR包 根据bug出现的位置去找到对应的jar,小项目最好导入一整个,这样可以全局检索到。
领取专属 10元无门槛券
手把手带您无忧上云