我昨天第一次使用jdb,我对结果非常满意.你看,我在我的笔记本电脑上用Eclipse编程,然后部署到VM以确保整个shebang仍然有效.非常偶然,我将不得不处理一些独立执行的事情,作为命令行.这些东西有时需要调试.
这一直是一个问题,因为我不想在VM上安装Eclipse的麻烦(它已经足够慢了!),但我不知道一个简单的方法来连接到我的命令行 - 在完成运行之前运行类.
jdb来救援!它起作用 - 小而实用,几乎到了裸露的地步......这迫使你比你应用工具更多地应用你的思想(就像我在这里说的那样).
确保打印出参考文献(solaris,windows,java 1.5 - 我认为它们都是一样的,真的如此)并在第二个屏幕上打开并浏览您的源代码.我希望你有第二个屏幕,或者你会很多.
假设您的程序由以下命令启动:
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=<port> <class>
Run Code Online (Sandbox Code Playgroud)
您可以通过 jdb 附加到此进程:
jdb -attach <port>
Run Code Online (Sandbox Code Playgroud)
在某些情况下,您需要使用以下命令。
jdb -sourcepath \.src -connect com.sun.jdi.SocketAttach:hostname=localhost,port= <port>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13483 次 |
| 最近记录: |