有人有使用这个的经验吗?如果是这样,值得吗?
Brian Wilson
问问题
15730 次
3 回答
7
我昨天才第一次使用 jdb,对结果非常满意。你看,我在笔记本电脑上用 Eclipse 编程,然后部署到 VM 以确保整个 shebang 仍然有效。偶尔,我将不得不处理一些独立执行的东西,作为命令行。这些东西有时需要调试。
这一直是个问题,因为我不想麻烦在 VM 上安装 Eclipse(它已经够慢了!),但我不知道有一种简单的方法让它连接到我的命令行-在它完成运行之前运行类。
jdb来救援!它是一种享受 - 小巧实用,几乎到了裸露的程度......这迫使你更多地应用你的思想而不是应用工具(就像我在这里所说的那样)。
确保打印出参考(solaris、windows、java 1.5 - 我认为它们实际上都差不多),并在第二个屏幕上打开和浏览源代码。我希望你有第二个屏幕,否则你会经常使用 alt-tabbing。
于 2008-10-03T05:51:01.967 回答
5
假设您的程序由以下命令启动:
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=<port> <class>
您可以通过 jdb 附加到此进程:
jdb -attach <port>
在某些情况下,您需要使用以下命令。
jdb -sourcepath \.src -connect com.sun.jdi.SocketAttach:hostname=localhost,port= <port>
于 2012-03-13T06:47:07.783 回答
-5
JDB 非常难以使用。放置 System.outs 或使用 IDE 调试器会产生更好的结果。对于更有趣的功能(例如跟踪线程、堆大小等),您可以使用JConsole工具以图形方式获取信息。
于 2008-09-18T01:46:42.370 回答