2011-07-24 159 views
4

有沒有一個很好的命令行調試器的Java?命令行Java調試器

我給JDB一個機會,但命令行界面很糟糕。如果我想改變最後一行並重新執行它,我必須重新輸入整行。 [UP-ARROW]的命中只會讓我「^ [[A]」。也沒有包/類/方法名稱的完成。

GDB是一個很好的選擇,但我不知道如何遠程調試它。

我有一個Maven/Vim安裝程序,並希望爲java使用控制檯調試程序,是否有可能在此設置中集成GDB或另一個好的調試程序?

問候斯文

+0

命令行的開發很酷!但我認爲使用IDE作爲Eclipse或IntelliJ IDEA可以爲你提供那些剛剛開箱的東西:) –

+0

我到目前爲止還沒有聽說過eclim服務器,它看起來像一個有趣的項目...我想你正在使用這是因爲你對以前的vim有豐富的經驗......但是......你爲什麼不直接在vim快捷方式中使用Eclipse?我之前使用過emacs,但現在我更喜歡隨時使用帶有emacs快捷鍵的IDE。順便說一下......如果你之前沒有嘗試過,我會推薦你​​使用IntelliJ IDEA ......我也使用過Netbeans和Eclipse ......但IDEA如果是最好的......但它不是' t免費,至少是最終版本(工程)。 –

+0

我有時會在eclipse中使用vim編輯器(http://eclim.org/ senario 3),但eclipse已經結束了我的功能,因爲每個功能都可以在vim中使用一個插件,所以我又回到了舊版本的vim 。這引發了關於命令行調試器的問題。 – SvenK

回答

-3

在這裏,你可以得到所有的command-line debuggers名單。

而且,不完全是一個調試器,但絕對是一個命令行界面的Java是 可以幫助你調試:

+0

您的意思是將Jython作爲一個Java腳本接口,我不知道,在代碼中寫入一些日誌記錄指令會不會更容易? – SvenK

+5

-1:在那個鏈接上正好有零個命令行調試程序.... –

+1

是的,那裏沒有命令行調試程序。 -1。 – user443854

6

雖然我還沒有找到一個很好的替代jdb然而,我開始使用rlwrap在readline中包裝jdb。這樣,我可以像bash一樣獲得歷史和全線編輯功能。可悲的是沒有完成,但rlwrap支持可插拔完成,所以有人可以寫一個!

+0

[rlwrap-jdb](https://github.com/pimlott/rlwrap-jdb)使用rlwrap鉤子提供了tab-complete和一些有用的命令別名,以及不可或缺的readline行爲。請注意,你可能會從命令行運行'rlwrap-jdb jdb -classpath my.jar ...'。 – user3780389

3

'rlwrap'的提示很棒!

我現在使用rlwrap -f . -f tags -e "" jdb <java> <args>,它基於歷史和標記文件(使用ctags --recurse創建)進行自動完成,這非常有用。 詳情請參考man rlwrap