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