9

有人有使用这个的经验吗?如果是这样,值得吗?

4

3 回答 3

7

我昨天才第一次使用 jdb,对结果非常满意。你看,我在笔记本电脑上用 Eclipse 编程,然后部署到 VM 以确保整个 shebang 仍然有效。偶尔,我将不得不处理一些独立执行的东西,作为命令行。这些东西有时需要调试。

这一直是个问题,因为我不想麻烦在 VM 上安装 Eclipse(它已经够慢了!),但我不知道有一种简单的方法让它连接到我的命令行-在它完成运行之前运行类。

jdb来救援!它是一种享受 - 小巧实用,几乎到了裸露的程度......这迫使你更多地应用你的思想而不是应用工具(就像我在这里所说的那样)。

确保打印出参考(solariswindowsjava 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 回答