十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
步骤
成都创新互联公司是一家集网站建设,汝城企业网站建设,汝城品牌网站建设,网站定制,汝城网站建设报价,网络营销,网络优化,汝城网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
首先打开eclipse,打开java源文件 如图:
在需要测试的代码行左侧行号列上双击,生成断点 ,再次双击可以取消断点 如图:
然后右键,选择Debug As-Java Application,(注意,不是选择Run As)
开始调试java程序 如图
有可能会弹出提示框(表示是否进入调试视图)点击确定就可以了
然后会进行调试视图,如图:
左侧上部是整个正常线程执行情况,右侧上部是刚才设置断点的行号列表.
在左侧上部有几个按钮需要注意如图:
这些按钮就是我们调试时的控制按钮 分别表示:
step into(快捷键F5)进入当前行的方法内部,一步一步执行
step return (快捷键F7)返回上一步执行的方法(相对应F5)
step over(快捷键F6)执行当前行,但不进入执行细节
resume (快捷键F8)恢复执行,表示接着执行代码,直接跳到下一个断点
terminate 停止调试
常用调试方法:按F8跳到下一个断点执行 如果需要查询执行细节F5F6F7等
取消断点的话:在右侧上部的断点列表区取消选择或删除当前断点即可
1.在你觉得有错的地方设置断点2.点击甲壳虫一样的按钮下面的子按钮,也是甲壳虫一样的,叫Debug3.运行程序,当程序运行到刚才设置断点的位置就会停下来,并且那行代码底色会高亮显示。4.接着你在如下界面你可以看到你想要的信息5.在Variables里面可以查看所有变量的值,比如刚才设置的断点里面的strClassName的值就可以看到。 6.下面按钮第一个是进入方法执行,比如你调用了其他方法,可以进入方法一步一步执行,如果点击第二个按钮,只会在本方法内一步一步执行,第三个按钮时你跳出此方法,继续执行调用这个方法的原方法。7下面这个按钮时直接执行完程序。8差不多就这些了,还有不明白可以继续QQ咨询我~
1. 远程debug调试java代码
1.1 主动连接调试
首先需要远程服务配置启动脚本:
JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"
如果是启动jar包,指令:
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 -jar test.jar
这里-Xdebug是通知JVM工作在DEBUG模式下,-Xrunjdwp是通知JVM使用(java debug wire protocol)来运行调试环境。
transport是监听Socket端口连接方式(也可以dt_shmem共享内存方式,但限于windows机器,并且服务提供端和调试端只能位于同一台机)。
server=y表示当前是调试服务端,=n表示当前是调试客户端。suspend=n表示启动时不中断(如果启动时中断,一般用于调试启动不了的问题)。
address=8000表示本地监听8000端口。
远程服务(tomcat/jboss)启动成功后,本地Eclipse对需要调试的地方打上断点,
然后项目右键启动远程调试:Debug as-Debug Configurations-Remote Java Application。
Host为远程主机IP,Port为远程监听调试端口,Connection Type为:Standard(Socket Attach),
点击Debug,然后打断点,远程服务运行到断点处本地就会中断,然后进行调试。
1.2 被动连接调试
首先需要Eclipse配置监听,如主动连接调试的Eclipse配置图片,Connection Type选择:
Standard(Socket Listen),配置本地监听端口,比如默认8000。点击Debug开始等待远程连接调试。
然后配置远程服务启动脚本:
JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:8000,suspend=y"
如果是调试jar包,指令:
java -Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:8000,suspend=y -jar remoting-debug.jar
参数含义和主动连接调试一样,只是这里suspend=y表示启动时就中断,需要连接本地IDE调试启动。
address=ip:port,ip需要修改为本地的对外IP。
这样远程项目启动时就连接到本地,方便调试项目启动不了的问题。
最基本的操作是:
1, 首先在一个java文件中设断点,然后运行,当程序走到断点处就会转到debug视图下,
2, F5键与F6键均为单步调试,F5是step into,也就是进入本行代码中执行,F6是step over,
也就是执行本行代码,跳到下一行,
3,F7是跳出函数
4,F8是执行到最后。
1.Step Into (also F5) 跳入
2.Step Over (also F6) 跳过
3.Step Return (also F7) 执行完当前method,然后return跳出此method
4.step Filter 逐步过滤 一直执行直到遇到未经过滤的位置或断点(设置Filter:window-preferences-java-Debug-step Filtering)
5.resume 重新开始执行debug,一直运行直到遇到breakpoint
6.hit count 设置执行次数 适合程序中的for循环(设置 breakpoint view-右键hit count)
7.inspect 检查 运算。执行一个表达式显示执行值
8.watch 实时地监视变量的变化
9.我们常说的断点(breakpoints)是指line breakpoints,除了line
breakpoints,还有其他的断点类型:field(watchpoint)breakpoint,method
breakpoint,exception breakpoint.
10.field breakpoint 也叫watchpoint(监视点) 当成员变量被读取或修改时暂挂
11.添加method breakpoint 进入/离开此方法时暂挂(Run-method breakpoint)
12.添加Exception breakpoint 捕抓到Execption时暂挂(待续...)断点属性:
1.hit count 执行多少次数后暂挂 用于循环
2.enable condition 遇到符合你输入条件(为ture\改变时)就暂挂
3.suspend thread 多线程时暂挂此线程
4.suspend VM 暂挂虚拟机
13.variables 视图里的变量可以改变变量值,在variables 视图选择变量点击右键--change value.一次来进行快速调试。
14.debug 过程中修改了某些code后--〉savebuild--resume--重新暂挂于断点
步骤如下:
1、在项目中找到想要调试的地方,如图,在代码行的前方点击设置断点,或者把鼠标移动到代码行,用快捷键“Ctrl+Shift+b”设置断点。
2、然后在上方标签栏中,如图操作“Debug As”-"Java Application"。
3、在弹出的对话框点击“Yes”,进入“debug模式”。
4、在窗口的右上方可以看到 代码中的相对应得值。
特别提示:F5是跳进,F6是执行下一步,F7是跳出。