在Ubuntu中使用JDB调试代码
在Ubuntu中使用JDB调试代码
了解JDB
JDB是JDK安装的一部分,是基于文本和命令行的调试工具,JDB是可以免费获取且平台独立的,缺点是只有命令行格式。
JDB基础命令
- 在方法中设置断点
stop in <class ID(类名)><method(方法)> - 在行中设置断点
stop at <class ID>:<line> - 下一步:当前行
step当前行+跳过进入函数next当前指令stepi执行至当前方法结束step up执行至下一断点next - 查看所在行
list - 查看变量值:所有变量
locals单个变量print <变量名>eval <变量名> - 列出断点
clear - 清除断点
clear <class ID>.<method>clear <class>:<line> - 退出
quit
调试实例
对于各命令的使用





对于JAVA课本第二章例4的调试
测试代码
public class test{
public static void main(String [] args){
int N=5;
System.out.println(fact(N));
}
public static int fact(int n) {
if (n == 0)
return 1;
else
return n * fact(n-1);
}
}
并修改参数N的值



调试中遇到的问题
在调试中我测试了JAVA课本第三章例9的调试,在涉及到
Scanner等JAVA自带的函数时使用step会进入函数,而没有进入输入过程。

经常会遇到莫名退出。
对于
step up的使用有疑问,还需要再做尝试
在Ubuntu中使用JDB调试代码的更多相关文章
- JDB调试代码 20165324 何春江
Java书本程序调试: 课上程序调试
- 使用JDB调试Java程序
Java程序中有逻辑错误,就需要使用JDB来进行调试了.调试程序在IDE中很方便了,比如这篇博客介绍了在Intellj IDEA中调试Java程序的方法. 我们课程内容推荐在Linux环境下学习,有同 ...
- vs加调试代码的正确姿势
为了方便,我们会在系统中加入一些调试代码,比如自动登录,这样会省掉很多精力时间,但用的姿势不对, 第一重姿势:打包注释 我看一些人在vs中加调试代码(比如自动登录),然后打包的时候注释掉,这样操作是省 ...
- jdb调试scala代码的简单介绍
在linux调试C/C++的代码需要通过gdb,调试java代码呢?那就需要用到jdb工具了.关于jdb的用法在网上大家都可以找到相应的文章,但是对scala进行调试的就比较少了.其实调试的大致流程都 ...
- OD提示 "为了执行系统不支持的动作, OllyICE 在这个被调试的程序中注入了一点代码, 但是经过5秒仍未收到响应..." 解决办法
别的OD就可以,我自己整合过的一个很顺手的OD就是不行,最后找到了解决办法: 转自:http://bbs.pediy.com/showthread.PHP?t=97629 -------------- ...
- 分享一个自定义的 console 类,让你不再纠结JS中的调试代码的兼容
问题的产生 在写JS的过程中,为了调试我们常常会写很多 console.log.console.info.console.group.console.warn.console.error代码来查看JS ...
- 第49章 在SRAM中调试代码—零死角玩转STM32-F429系列
第49章 在SRAM中调试代码 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/fir ...
- 在SRAM、FLASH中调试代码的配置方法(附详细步骤)
因为STM32的FLASH擦写次数有限(大概为1万次),所以为了延长FLASH的使用时间,我们平时调试时可以选择在SRAM中进行硬件调试.除此之外,SRAM 存储器的写入速度比在内部 FLASH 中要 ...
- 如何在pycharm中进入shell脚本调试代码
首先在Teramal终端 输入python manage.py shell 然后进行下图操作来调试代码
随机推荐
- Ubuntu16.04安装Python3.6 和pip(python3 各版本切换)
安装: sudo add-apt-repository ppa:jonathonf/python-3.6 sudo apt-get update sudo apt-get install python ...
- 爬虫系列1:Requests+Xpath 爬取豆瓣电影TOP
爬虫1:Requests+Xpath 爬取豆瓣电影TOP [抓取]:参考前文 爬虫系列1:https://www.cnblogs.com/yizhiamumu/p/9451093.html [分页]: ...
- [转]Deciding on a Project Coding Mask
https://blogs.sap.com/2015/11/26/deciding-on-a-project-coding-mask/ SAP里面每个模块都有其number range的定义和分派逻辑 ...
- robotframework在3.7下的搭建
网上看了大多安装RIDE都是在python2的环境下,今天试了下python3的安装,成功了,步骤如下: 1.首先是python3的安装,以及pip这些工具,具体的网上一堆,不再啰嗦 2.安装robo ...
- 通过google cloud API 使用 WaveNet
Cloud Text-to-Speech 中使用了WaveNet,用于TTS,页面上有Demo.目前是BETA版 使用方法 注册及认证参考:Quickstart: Text-to-Speech 安装g ...
- linux ssl证书配置(apache)
1. 前提是 已通过第三方 申请到 .crt .key 和 .ca-bundle 文件 2. 将三个文件拷贝到linux服务器上 任意一个指定的目录 3. 找到要编辑的apache配置 Apache主 ...
- int x ; x+1<x;公式成立
直接上代码: Console.WriteLine("int取值范围 -2147483648-2147483647");int x = 2147483647;// Console.W ...
- mvc开发中DTO,DO,FROM的区别
DO:数据库实体类映射到model里的实体类,每个字段都和数据库相对应,一般来说开发的时候不要去添加或者修改里面的实体 DTO:与前台交互的时候(一般来说是查询操作)有一些数据字段是那一张表里面没有囊 ...
- windows下nginx的安装及使用(转载)
转载自:https://www.cnblogs.com/jiangwangxiang/p/8481661.html 1.下载nginx http://nginx.org/en/download.htm ...
- 缓冲区 subprocess 黏包 黏包的解决方案
缓冲区: 将程序和网络解耦输入缓冲区输出缓冲区 print('>>>>', server.getsockopt(SOL_SOCKET, SO_SNDBUF)) 查看输出缓冲区大 ...