有沒有人有使用過這方面的經驗? 如果是這樣,它值得嗎?Java jdb遠程調試命令行工具
5
A
回答
4
我剛剛昨天第一次使用jdb,對結果非常滿意。你看,我在我的筆記本電腦上用Eclipse進行編程,然後部署到虛擬機上,以確保整個shebang仍然可用。非常偶然的情況下,我必須研究一些獨立執行的東西,作爲命令行。這些東西有時需要調試。
這一直是一個問題,因爲我不想在VM上安裝Eclipse的麻煩(它已經夠慢了!),但我不知道一個簡單的方法來獲得它在完成運行之前連接到我的命令行運行類。
jdb來救援!它的作用很小 - 功能很小,幾乎到了裸露的地步......這會迫使你更多地運用你的頭腦,而不是使用這個工具(就像我說的here)。
確保打印出參考文獻(solaris,windows,java 1.5 - 我認爲它們都差不多),並在第二個屏幕上打開並瀏覽您的源代碼。我希望你有第二個屏幕,否則你會很多。
-1
我更喜歡在eclipse中使用遠程調試工具。
-3
JDB難以置信地難以使用。放置System.outs或使用IDE調試器將產生更好的結果。對於更有趣的功能(例如跟蹤線程,堆大小等),您可以使用JConsole工具以圖形方式獲取信息。
+0
加多寶是那麼容易,因爲任何調試器來使用,這種反饋是非生產性。 此外,JConsole不允許您觀察變量,設置斷點,中斷例外等。 – 2014-06-11 00:16:53
2
假設你的程序是由以下命令開始:
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=<port> <class>
您可以通過JDB附加到這個過程:
jdb -attach <port>
相關問題
- 1. mySQL命令行選擇 - 遠程工具
- 2. 如何從maven命令行遠程調試java應用程序
- 3. 運行命令行工具Java程序
- 4. 由java applciation調用命令行工具
- 5. 在Eclipse中遠程Java調試之前運行命令
- 6. 命令行Java調試器
- 7. 從java執行命令行工具因命令行而異?
- 8. 命令行Powercenter測試工具
- 9. 在MATLAB中調試Java - 找不到jdb
- 10. 使用JDB和Gradle調試Java
- 11. Java調試工具
- 12. 使用Ruby調用命令行工具
- 13. Swift:命令行工具退出回調
- 14. Axis2:wsdl2java工具命令行
- 15. 卡在調試運行遠程命令的任務時凍結
- 16. 使用Zend遠程調試PHP命令行腳本?
- 17. 什麼是Java命令行選項設置爲允許遠程調試JVM?
- 18. 遠程執行命令
- 19. Centos 5.5遠程命令行
- 20. 執行Python命令遠程
- 21. linux遠程執行命令
- 22. 遠程docker命令執行
- 23. 遠程調試Java 9
- 24. IE7 javascript命令行工具
- 25. Deflate命令行工具
- 26. AWS命令行工具破:(
- 27. 命令行STL卷工具
- 28. ios SDK命令行工具
- 29. Nessus命令行工具
- 30. 命令行轉錄工具
正如在其他答案中通過codingME所述,您可以使用JPDA(http://docs.oracle.com/javase/1.5。 0/docs/guide/jpda/conninv.html)命令行切換,使您的Java VM偵聽調試器連接。嘗試suspend = y暫停執行,直到調試器連接,避免在調試器連接之前完成程序的問題。通過指定合適的端口號以及防火牆配置或SSH隧道設置,您可以通過網絡連接到遠程VM。例如:-agentlib:jdwp = transport = dt_socket,server = y,address = 5005,suspend = y – Neek 2012-07-24 07:14:24