一直在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