如何调试Java程序?
大家最开始学习Java,都会觉得IDE调试好高端有木有,其实很简单了。
下文会尽量简单直观的教会你在Eclipse中调试,其他的IDE调试步骤也是类似的。
1.在你觉得有错的地方设置断点。
在代码行数前,点击右键,注意是右键,然后选择Toggle Breakpoint。
你可能会问,我如何知道在哪儿放置断点?
如果对这个问题完全没有感觉,你完全可以多打几个断点,单步调试直到找到异常,只是多花一点时间而已,而且这样可以更深入了解程序的执行过程!
当然,如果你大致可以直到哪里可能会出问题,或者异常信息报告类位置,那么就可以在这里设置断点。
2.点击Debug,如果是web程序,需要你将Tomcat或者Apache服务器以Debug模式启动。
这很重要,标准的Start模式,不能进入预先设置的断点,也就不能达到调试的目的。
3.运行程序,当程序运行到刚才设置断点的位置就会停下来,并且那行代码底色会高亮显示。
这时候,你可以通过屏幕按钮或者键盘控制程序的进行。
下面是键盘对应调试的快捷键,如果不起作用,你可以检查一下是不是键盘冲突。
比如有道词典的快捷键,经常会和Debud模式下的Resume冲突。
作用域 功能 快捷键
全局 单步返回 F7
全局 单步跳过 F6
全局 单步跳入 F5
全局 单步跳入选择 Ctrl+F5
全局 调试上次启动 F11
全局 继续 F8
全局 使用过滤器单步执行 Shift+F5
全局 添加/去除断点 Ctrl+Shift+B
全局 显示 Ctrl+D
全局 运行上次启动 Ctrl+F11
全局 运行至行 Ctrl+R
全局 执行 Ctrl+U
4.进入调试界面可以看到你想要的信息。
5.在Variables里面可以查看所有变量的值,比如刚才设置的断点里面的值,右键ChangeValue可以更改,部分IDE支持在窗口中热更改并执行代码。
6.下面按钮第一个是进入方法执行,比如你调用了其他方法,可以进入方法一步一步执行,如果点击第二个按钮,只会在本方法内一步一步执行,第三个按钮时你跳出此方法,继续执行调用这个方法的原方法,说明如下。
7.执行完程序。
8.为Eclipse添加反编译插件,更好的调试
一般来说,我们的项目或多或少的都会引用一些外部jar包,如果可以查看jar包的源代码,对于我们的调试可以说是事半功倍。
1、下载并安装jad.exe。将jad.exe解压到程序目录(可以放置任意目录),例如:C:\Program Files\Jad\jad.exe。
2、安装jadclipse插件。下载并解压net.sf.jadclipse_3.3.0.jar,将其拷贝到eclipse\plugins目录下,重新启动eclipse。
3、配置jadclipse。在eclipse窗口下,点击Window > Preferences > Java > JadClipse > Path to Decompiler。
(设置jad的绝对路径,例如 C:\Program Files\Jad\jad.exe)
可将Use Eclipse code formatter(overrides Jad formatting instructions)选项打勾,这样可以与Ctrl+Shif+F格式化出来的代码样式一致。
执行完这几个步骤,再在导入自Jar包的类或者方法上点击查看,就可以查看源代码了,如果不能,参考下面的解决办法:
多数情况下,是eclipse未能自动将JadClipse Class File Viewer设置成class文件的缺省打开方式。
在Eclipse的Windows——> Perference——>General->Editors->File Associations中修改“*.class”和“*.class without source”默认关联的编辑器为“JadClipse Class File Viewer”。
曾经配置过几次jad插件,如果不能反编译,如此设置后,屡试不爽。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
Swoole 开发组成员 @codinghuang 开发了一个新的调试扩展,名为 Yasd ,另一个 Swoole 调试器。 众所周知,xdebug 原生对 Swoole 并不兼容,并且代码难以维护,所以才有了 Yasd! Yasd 完全兼容 xdebug 协议,你可以在任何支持 xdebug 的 IDE 中以同样的方式使用 Yasd 进行单步调试。 Yasd 地址:https://github.
问题内容: 假设我有一个IPython会话,从中调用一些脚本: 有没有一种方法可以引入断点,从中可以从IPython检查工作区? 我记得在以前的IPython版本中可以做到这一点: 但是该子模块似乎不再可用。 假设我已经打开了IPython会话: 如何在我选择的位置停止程序并使用IPython检查我的工作区 ? 通常,我更喜欢不需要我预先指定行号的解决方案,因为我希望上面有多个这样的调用,而不必跟
主要内容:涉及的步骤,了解断点运行Python代码包含两种模式:运行脚本和调试脚本。 本章重点介绍如何使用PyCharm来调试Python脚本。 涉及的步骤 调试Python项目的步骤如下所述 - 第1步 从下面的屏幕截图所示开始调试Python项目 - 第2步 现在,Windows防火墙要求调试Python项目的权限,因为该过程涉及逐行编译。 第3步 调试控制台在PyCharm编辑器中创建,如下所示,它逐行执行输出。 运行按
断点调试是编程的一大利器,为我们的调试工作带来很多遍历。本文我就讲讲如何用phpstrom配置php的断点调试。 安装xdebug 在配置断点调试之前,你必须先安装xdebug,先去官网下载源码,然后编译安装就好了。(windows用户请直接下载编译好的二进制包) wget https://xdebug.org/files/xdebug-2.5.0.tgz tar xvpzf xdebug-2.5
运行python代码包括两种模式:运行脚本和调试脚本。 本章重点介绍如何使用PyCharm调试Python脚本。 步骤 (Steps Involved) 调试Python项目的步骤如下所述 - Step 1 从调试Python项目开始,如下面的屏幕截图所示 - Step 2 现在,Windows防火墙要求调试Python项目的权限,因为该过程涉及逐行编译。 Step 3 调试控制台在PyCharm
本文向大家介绍你平时是怎么调试js的?会断点调试吗?断点调试有什么技巧呢?相关面试题,主要包含被问及你平时是怎么调试js的?会断点调试吗?断点调试有什么技巧呢?时的应答技巧和注意事项,需要的朋友参考一下 jquery 时代还能通过绑定事件的元素找到相应代码,后来就哦豁了, 现在要么改代码书写 debugger 或者用 vscode 的调试方案。 F8 跳到下个断点,F10 跳到下一行, 到达一个方