命令行工具jdb调试Java程序
2016-06-23 16:15
288 查看
一直在gdb 下调试c/c++程序。 突然要写个java程序,又不是很喜欢使用eclipse,那怎么调试程序呢。你还可以使用 jdb。 它是jdk 内置的一个java debug工具。类似与 gdb。不过功能稍弱,但也已经很值得敬佩了。 假如你的java源代码是 hello.java 文件。那么你需要编译的时候加上 -g 选项。这一点和 gdb 一致。怎么做? javac -g hello.java 此时会生出一个 hello.class的文件。现在可以调试了。类似于 java命令一样,jdb也仅仅需要加上类名(不需要 .class) jdb hello 加载成功后,我们通常会在 main函数的位置加上断点。怎么做? stop in hello.main 如何查看被成功加入的断点? clear 成功后,运行程序。 run 此时程序暂停到main函数的第一行 我们可以源代码 list 包含等号和大于号的行是当前即将执行的行。仅仅执行当前行,怎么做? step 如果要查看某个变量的值比如变量 i的值。怎么做? print i dump i eval i 如果你认为这个值是错的,比如它是1,可是你需要是2。如何修改它? set i = 2 如何显示当前堆栈帧中的所有本地变量 locals 想要执行并跨过某个函数。怎么做? next 想要一次只执行一个指令。怎么做? stepi 这一点和gdb是一致的。 从当前位置直接执行到程序结束(或者下一个断点或信号) cont 想要重复执行最后一个命令? !! 将某个命令重复执行n次? <n> <命令> 写出所有帮助 help ? 查看jdb的版本号 version
相关文章推荐
- struts2_valueStack(二)
- jar 反编译--Jadclipse
- java生成unicode编码格式的txt文件
- Java总结篇系列:Java泛型
- java中ThreadLocal类的使用
- Spring入门第2天--面向切面编程入门
- java多线程--“朴素版”生产者消费者问题
- Mybatis中javaType和jdbcType对应关系
- Mybatis中javaType和jdbcType对应关系
- springmvc 4 返回json数据
- JAVA 数组类型
- springMVC实现文件上传
- springmvc 传出参数
- spring学习总结-第二讲
- Hibernate注解使用以及Spring整合
- java多线程--优先级
- Error:The supplied javaHome seems to be invalid. I cannot find the java executable. Tried location:
- Mybatis学习之个人笔记(一)
- java线程池和关闭线程池中的线程
- Spring 事务管理高级应用难点剖析: 第 3 部分