myeclipse怎么进行远程调试,远程debug
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了myeclipse怎么进行远程调试,远程debug相关的知识,希望对你有一定的参考价值。
右击项目出现菜单1、选择“debug as”
2、选择“Debug configurations”
选择框中的内容
点击框中内容,出现界面
1、输入一个名字
2、选择"浏览"
选择你需要远程调试的项目
1、配置远程服务器的IP
2、配置端口号
3、点击“debug” 参考技术A 看过许多远程调试的例子,大多数都是针对tomcat或者jboss服务器的,很少能搜索到weblogic服务器的远程调试例子和文章,前些天在项目开发的时候尝试了一下,感觉十分得不错,拿出来跟大家分享一下,不过我要多罗嗦几句。
远程调试的好处:我们现在开发的模式大多是本机用eclipse集成source管理环境,集成ant的编译环境,用weblogic插件集成运行环境,基本上一个eclipse又当爹又当妈的,这样的好处就是开发环境配置集中,普通的程序员只要按步骤做就可以了,开发步骤简单,对整个项目是一件好事。那么站在普通的程序员角度?什么也没有学到,就是在模仿而已,如果本机的硬件配置如果很低的话,意味着开发效率的降低,同时一点开发乐趣都没有,就是在实现业务而已,是很难了解工具本身的特点。远程调试的好处就是把集中的配置分散开来,让资源分配在不同的机器上,降低本机资源的使用。换一句话,就是将运行环境和开发环境的彻底的分离出来,对于那些实时对应和保守的程序员来说,简直就是一个福音,用户环境一旦出现什么bug的话,你个人可以在最短的时间内再现和调试,而不用运行本机的测试环境。
Java Remote Debug(idea远程调试)
概述
对于分布式系统的调试不知道大家有什么好的方法。对于我来说,在知道远程调试这个方法之前就是在代码中打各种log,然后重新部署,上线,调试,这样比较费时。今天咱们来了解了解Java远程调试这个牛逼的功能,本文以Intellij IDEA为例讲解怎么使用远程调试。以Thrift入门教程这篇文章中使用的程序作为例子。这个程序由Thrift服务端和客户端组成。描述一下远程调试需要解决的问题:
服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码(前提是本地的代码必须和远程服务器运行的代码一致)中设置断点,每当有请求到远程服务器时时能够在本地知道远程服务端的此时的内部状态。
下面按照步骤介绍怎么远程debug。
使用特定JVM参数运行服务端代码
要让远程服务器运行的代码支持远程调试,则启动的时候必须加上特定的JVM参数,这些参数是:
-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=${debug_port}
其中的${debug_port}是用户自定义的,为debug端口,本例以5555端口为例。
配置步骤
1.本地idea配置
打开Intellij IDEA,在顶部靠右的地方选择”Edit Configurations…”,进去之后点击+号,选择”Remote”,按照下图的只是填写红框内的内容,其中host为远程代码运行的机器的ip/hostname,port为上一步指定的debug_port,本例是5555
然后点击Apply,最后点击OK即可
注:其中host为远程服务器地址 Port为自定义端口
保留JVM参数(服务器配置时使用)
或
2.服务器配置
修改启动脚本(start.sh)--田间JVM参数
nohup /usr/java/jdk1.8.0_40/bin/java -jar -Xdebug -Xrunjdwp:transport=dt_socket,address=9527,server=y,suspend=y Appserver.jar --spring.config.locaton=./application.yml --logging.config=./logback.xml &
注:
启动debug模式
现在在上一步选择”Edit Configurations…”的下拉框的位置选择上一步创建的remote的名字,然后点击右边的debug按钮(长的像臭虫那个),看控制台日志,如果出现类似“Connected to the target VM, address: ‘xx.xx.xx.xx:5555’, transport: ‘socket’”的字样,就表示连接成功过了。
设置断点,开始调试
远程debug模式已经开启,现在可以在需要调试的代码中打断点了,比如:
如图中所示,如果断点内有√,则表示选取的断点正确。
现在在本地发送一个到远程服务器的请求,看本地控制台的bug界面,划到debugger这个标签,可以看到当前远程服务的内部状态(各种变量)已经全部显示出来了,并且在刚才设置了断点的地方,也显示了该行的变量值。
Java Remote Debug(idea远程调试)
以上是关于myeclipse怎么进行远程调试,远程debug的主要内容,如果未能解决你的问题,请参考以下文章